Hum... do Messaging tudo ok, parece q o problema está nessa criação da sessao.
Muito estranho ele criar uma nova sessão a cada requisição... isso não pode acontecer. Faça outros dois favores: 1) Remova o <scope>application</scope> e teste novamente o sessionId. 2) se id da sessao continuar mudando para a cada requisição, isole a situção em um exemplo bem simples e publique seus arquivos de configuração em algum lugar para que possamos ver e tentar adivinhar oq est[a acontecendo. Diga-nos tb qual o seu ambiente de desenvolvimento (onde essa situação está ocorrendo). T+ 2009/2/9 Dam <damia...@gmail.com> > > Olá Mário, > > Obrigado por ter respondido. > Então vamos lá... > > ##### TESTE 1 ###### > Eu não sei como pegar a instância da Classe FlexContext. Eu achava que > era um singleton, mas não encontrei nenhum método para obter a > instância. Eu fiz da seguinte forma: > > toda vez que o servidor era requisitado eu imprimia no log o > "clientId" e o "sessionId" através dos seguintes comandos: > > FlexContext.getFlexSession().getId() > FlexContext.getFlexClient().getId() > > O resultado é que todas as sessionId são diferentes e os clientId são > iguais (o que era esperado). > Quando acesso o serviço por outro browser, o clientId é diferente (até > aqui Ok) e os sessionId são diferentes a cada requisição (como vem > acontecendo). > > ##### TESTE 2 (Messaging) ###### > > O log do BlazeDS imprime a mensagem abaixo logo depois de > "consumer.subscribe()" . De acordo com esse log, o clientId é null =/ > > [BlazeDS] Channel endpoint my-datapush received request. > [BlazeDS] Deserializing AMF/HTTP request > Version: 3 > (Message #0 targetURI=null, responseURI=/1) > (Array #0) > [0] = (Typed Object #0 'flex.messaging.messages.CommandMessage') > operation = 5 > correlationId = "" > body = (Object #1) > headers = (Object #2) > DSMessagingVersion = 1 > DSId = "91C38785-4C18-7147-B8DE-F0A9A49B8811" > timeToLive = 0 > messageId = "61D5A64D-8D5C-2827-A49F-5CE2818B1033" > timestamp = 0 > clientId = null > destination = "" > > [BlazeDS] Serializing AMF/HTTP response > Version: 3 > (Message #0 targetURI=/1/onResult, responseURI=) > (Externalizable Object #0 'DSK') > (Object #1) > DSMessagingVersion = 1.0 > DSId = "91C38785-4C18-7147-B8DE-F0A9A49B8811" > 1.234213962129E12 > (Byte Array #2, Length 16) > (Byte Array #3, Length 16) > (Byte Array #4, Length 16) > > On 9 fev, 10:46, Mário Júnior <juninho...@gmail.com> wrote: > > Muito estranho esse comportamento.. receio q haja algum problema com o > > container (oq é muito difícil de acontecer tb) > > > > Com o Remote Object vamos fazer 2 testes: > > ##### TESTE 1 ###### > > 1) Faz o seguinte mano, no construtor da sua classe de serviço vc pega o > > contexto e guarda num atributo privado da classe. > > 2) na execução do seu método, vc faz um simples println do session_id. > > > > 3) chame o método várias vezes e verifique se o id da sessão é alterado a > > cada chamada. > > > > Restulado esperado: o session_id TEM q ser sempre o mesmo para essa > > aplicação > > > > ##### TESTE 2 ###### > > Sem fechar a aplicação anterior, Abra a mesma aplicação flex em outro > > browser e chame o método novamente. > > Resultado esperado: o session_id dessa nova aplicação TEM q ser DIFERENTE > do > > sesison_id criado pela aplicação anterior > > > > Já com relação ao Messaging: > > 1) dê uma olhada no log do blaze (lembrando q o logging precisa estar > > ativado (true) no services-config.xml) e verifique se um clientID é > criado > > no momento q o consumer é inscrito (subscribe). > > > > Dá um retorno pra gente saber. > > > > Um abraço e boa sorte. > > > > 2009/2/9 Dam <damia...@gmail.com> > > > > > > > > > > > > > Bom dia pessoal, > > > > > estou tendo um problema grave de gerenciamento de seções. A situação é > > > a seguinte: > > > > > estou trabalhando com um servidor Tomcat+Blaze DS. O canal está > > > definido como AMFChannel no arquivo services-config.xml: > > > > > <channel-definition id="my-amf" > > > class="mx.messaging.channels.AMFChannel"> > > > <endpoint url=" > http://localhost:8080/servidor/messagebroker/amf > > > " > > > class="flex.messaging.endpoints.AMFEndpoint"/> > > > </channel-definition> > > > > > No arquivo remoting-config.xml eu informo qual a classe que > > > representará o RemoteObject no Flex: > > > > > <destination id="service"> > > > <properties> > > > <source>controller.Service</source> > > > <scope>application</scope> > > > </properties> > > > </destination> > > > > > Depois, no cliente Flex, eu crio um RemoteObject quando o modulo mxml > > > é carregado. Toda vez que clico em um botão na interface Flex ele > > > chama uma função do meu RemoteObject. > > > > > Ok, agora vamos ao problema =P > > > > > Pra quem está acostumado a usar o Tomcat, as versões mais novas vem > > > com um contador de seções na parte de gerenciamento de aplicações. O > > > que eu observo é que toda vem que eu chamo o RemoteObject o cliente > > > Flex cria uma nova seção. No início eu achava que era pq ele estava > > > criando vários RemoteObject, mas agora eu constatei que apenas 1 é > > > criado. > > > > > Alguém sabe como fazer para ele não criar uma nova seção toda vez que > > > o Flex faz alguma requisição para o servidor? > > > > > E este é apenas um caso simples. A coisa piora quando eu uso data > > > push. Quando eu crio um Consumer no Flex pra ficar ouvindo um > > > determinado cannal, ele fica criando seções indefinidamente =/ > > > > -- > > Mário de Souza Júnior > > Programador Java / Adobe Flexhttp://blog.mariojunior.com > > > -- Mário de Souza Júnior Programador Java / Adobe Flex http://blog.mariojunior.com --~--~---------~--~----~------------~-------~--~----~ Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev -~----------~----~----~----~------~----~------~--~---