Rodrigo a título de curioside, até porque esse assunto me interessa.

Do ponto de vista "funciona" eu entendi a solução, mas do ponto de vista
"solução" imagino que gere um problema. se você faz uma requisição a cada
5min para cada usuário para manter ele logado, isso não pode gerar um
problema de acessos? se eu colocar 300 usuários dentro da aplicação isso
gera 1 ping por segundo, e me gera uma necessidade de ter um server com
maior capacidade de processamento.

Por outro lado, tirando funcionalidades como chat ou living data não vejo
porque manter o user no server, uma vez que é possivel ter esse tipo de
recurso de login atraves do SharedObject. Exsite algum beneficio nessa
session no server?


Obrigado,

Rafael Bandeira Rodrigues
Chief Executive Officer
FlagNet - Soluções em Tecnologia
http://www.flagnet.inf.br/

Adobe ColdFusion 8 Certified Expert
Adobe ColdFusion MX 7 Certified Developer
Adobe Certified Professional
Adobe Certified Instructor
Adobe Certified Expert
Fusebox - BRASIL
http://www.fusebox.com.br/
RafaBand - BlogSpot.com
http://rafaband.blogspot.com/
FlagNet - Twiter
http://twitter.com/flagnet/

"Pensar apenas ou desejar somente nunca levou ninguém a lugar nenhum. É
necessário também a ação" - William Shakespeare



Em 1 de setembro de 2011 10:18, Rodrigo Valentim <[email protected]
> escreveu:

> 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 
> <[email protected]>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 <[email protected]>
>>
>>> 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 <
>>> [email protected]> 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 
>>>> <[email protected]>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 <[email protected]>
>>>>>
>>>>>> 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
>>>>> [email protected]
>>>>> Para sair da lista, envie um email em branco para
>>>>> [email protected]
>>>>> 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 [email protected]
>>>> Para sair da lista, envie um email em branco para
>>>> [email protected]
>>>> 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 [email protected]
>>> Para sair da lista, envie um email em branco para
>>> [email protected]
>>> 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 [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> 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 [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a