Sim. O Tomcat remove sua sessão apos o timer.. meu timer aqui é de 5minutos... então, dessa forma o usuário pode passar 1 hora olhando pro monitor e a sessão não cai devido ao metodo pingSession() que existe no java... esse metodo é apenas para manter a comunicação viva... e assim, a sessão também (imagine você preenchendo um formulario que só manda pro java qdo acaba tudo... a sessão vai morrer, então você implementa um timer no flex que faz uso do remoteObject chamando esse metodo pingSession() (ou qualquer outro nome).
Exatamente desta forma, consegui resolver meu problema para guardar o usuário logado... nunca mais tive problemas com isso! Em 31 de agosto de 2011 16:11, Leonardo Ribeiro <leojribe...@gmail.com>escreveu: > @ Rodrigo > > Após ler as opiniões e sugestões dos colegas da lista resolvi testar a sua > solução e tenho algumas perguntas: > > Se eu subo o tomcat e faço o login na aplicação, o usuário é colocado na > sessão e se fico mais do que o tempo > configurado para o timeout o usuário é retirado de (usuariosLogados) e > (abaixo o log) > > FlexClient destruido: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 > 15:53:01 BRT 2011 > Sessão destruida: Wed Aug 31 15:53:01 BRT 2011 > Sessão criada: Wed Aug 31 15:53:01 BRT 2011 > FlexCliente criado: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 > 15:53:01 BRT 2011 > > FlexClient e sessao destruida e recriada... > > Se eu continuo a não utilizar no console eu vejo o mesmo log > > FlexClient destruido: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 > 15:59:15 BRT 2011 > Sessão destruida: Wed Aug 31 15:59:15 BRT 2011 > Sessão criada: Wed Aug 31 15:59:15 BRT 2011 > FlexCliente criado: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 > 15:59:15 BRT 2011 > > É isso mesmo? > > Outra coisa é que mesmo eu ficando tempo sem usar se eu tentar por exemplo > fazer > um cadastro eu consigo sem problema... > > > > 2011/8/31 Pedro Augusto Clemente de Melo <pedro.p...@gmail.com> > >> Leonardo, >> >> Há pouco mais de um mês estava com o mesmo problema. Devo te avisar que >> não é algo tão trivial. Trabalho com um projeto com configurações bem >> semelhantes ao seu (uso Flex3 ao invés de 4). >> >> No BlazeDS existem classes chamadas "FlexSession" e "FlexContext". Com >> essas classes, no Java você consegue guardar uma referência para cada >> instância de um cliente Flex que você tiver. >> >> Esta referência é por instância de browser no cliente (duas abas do >> firefox são uma mesma FlexSession e duas janelas são duas FlexSessions, não >> sei como ficaria no caso do Chrome onde você brinca com as abas jogando-as >> de uma janela para outra). >> >> A partir disso é possível implementar o login, logout e o timeout por >> sessão inativa. O problema é que ele só vai identificar uma atividade na >> sessão quando houver uma requisição para o servidor. No meu caso, existem >> formulários muito longos a serem preenchidos e a sessão dá timeout mesmo com >> o usuário trabalhando. Não recorri à requisições esporádicas para manter a >> sessão aberta por isto não seria escalável em produção. >> >> Pelo menos no Flex3 existe um evento chamado "IDLE" que pode ajudar neste >> problema. Não estudei mais afundo por que tenho demandas com prioridade >> maior no momento. >> >> Espero ter ajudado e se você achar alguma solução, por favor, compartilhe! >> >> Abraço >> >> Em 31 de agosto de 2011 08:59, Rodrigo Valentim < >> rodrigo.valen...@gmail.com> escreveu: >> >> Leonardo, >>> >>> Certa vez precisei fazer algo parecido e funcionou.... >>> >>> A ideia original foi essa http://www.cauirs.com.br/rafael/?p=119 >>> >>> Porém, se tu pesquisar por controle de usuário flex no google, aparece >>> outros exemplos. >>> >>> a forma que fiz foi mais simples. Todo usuário logado eu guardo em um >>> array >>> >>> Em 31 de agosto de 2011 08:26, Leonardo Ribeiro >>> <leojribe...@gmail.com>escreveu: >>> >>> Ah uma coisa que esqueci de mencionar no e-mail origial é que >>>> a app usar Flex 4 + BlazeDS + Java no server (com Spring e Hibernate) >>>> >>>> >>>> 2011/8/31 Leonardo Ribeiro <leojribe...@gmail.com> >>>> >>>>> Pessoal, >>>>> >>>>> Preciso implementar em uma app flex4 login e logout. >>>>> o login já é feito (com menus sendo criados dinamicamente de acordo >>>>> com os direitos do usuário), mas eu preciso de 2 coisas mais: >>>>> >>>>> 1 - guardar o usuário logado para que não seja possível logar >>>>> com o mesmo usuário duas vezes (mesmo browser outra aba, outra janela >>>>> do mesmo browser ou outro browser - chrome e firefox por exemplo) >>>>> >>>>> 2 - ter opção de logout nas seguintes situações: >>>>> 2.1 - um botão "logout" na app >>>>> 2.2 - ao fechar o browser >>>>> 2.3 - ficar um determinado tempo sem usar a app >>>>> >>>>> para todos os casos de logout acima precisaria gravar um log no BD. >>>>> >>>>> Inicialmente não queria ter uma tabela para guardar o usuários logados, >>>>> preferiria ter algum controle de sessão mesmo, se possível >>>>> >>>>> -- >>>>> []'s >>>>> Leonardo >>>>> >>>>> Linux User #488650 >>>>> Ubuntu User #27045 >>>>> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece >>>>> >>>> >>>> >>>> >>>> -- >>>> []'s >>>> Leonardo >>>> >>>> Linux User #488650 >>>> Ubuntu User #27045 >>>> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece >>>> >>>> -- >>>> 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 >>>> >>> >>> >>> >>> -- >>> Atenciosamente, >>> Rodrigo Valentim >>> >>> -- >>> 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 >>> >> >> >> >> -- >> Pedro Augusto Clemente de Melo - PACM >> Ciência da Computação 2007-2 >> (81) 8795-1112 >> >> -- >> 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 >> > > > > -- > []'s > Leonardo > > Linux User #488650 > Ubuntu User #27045 > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece > > -- > 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 > -- Atenciosamente, Rodrigo Valentim -- 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