Rodrigo,

Entendi, mas no caso de eu precisar realmente "dar logout" no usuário depois
de certo tempo sem atividade essa abordagem não vai funfar neh?

@Rafael

Ele mantém o usuário no server para poder verificar no ato de um login se
tal usuário já está logado no sistema.




2011/9/1 Rafael Bandeira Rodrigues <rafab...@gmail.com>

> 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 <
> rodrigo.valen...@gmail.com> 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 
>> <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
>>
>
>  --
> 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

Responder a