Rafael,

Toda informação é válida. Eu tenho muito mais experiência em Java do que em
Flex e quando surgiu essa necessidade a solução do Rodrigo me pareceu e
parece muito interessante.
Quanto a usar Producer/Consumer e SharedObject eu nunca utilizei então
infelizmente não tenho uma opinião a respeito mas vou atrás de mais
informação eles.
De repente é uma alternativa.
Se puder dar uma breve explanada de como funciona o esquema de
Producer/Consumer e SharedObject  pra mim seria de grande valia.

Att



2011/9/1 Rafael Bandeira Rodrigues <[email protected]>

> Ok isso seria um ponto, mas a verificação do estado login simultaneo da
> para resolver com o Producer e Consumer e o proprio SharedObject.
>
> Aqui por exemplo tenho na aplicação, a criação do producer e consumer
> mediante o login que é feito por RemoteObject para uma consulta SQL que me
> retorna os dados do login a serem guardados no SharedObject. o Producer e
> Consumer tem esse controle de login para o modelo SaaS. Não cheguei a testar
> se o login feito com um intervalo longo existe esse reconhecimento de
> duplicidade, alias vou testar, mas acredito que isso funcione como o
> controle.
>
> Enfim como falei estou só colocando minhas experiencias e tentando
> descobrir novos caminhos
>
>
> 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 14:21, Leonardo Ribeiro 
> <[email protected]>escreveu:
>
> 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 <[email protected]>
>>
>>> 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
>>>
>>
>>
>>
>> --
>> []'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
>>
>
>  --
> 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

Responder a