> X-Originating-IP: [200.215.165.27]
> From: "Heider Maciel" <[EMAIL PROTECTED]>
> To: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]
> Subject: Re: Identificacao
> Date: Fri, 05 Feb 1999 09:09:21 PST
> 
> Bruno,
> 
> 
> Meu problema e o seguinte:
> 
> Estou desenvolvendo um servlet que passa por uma conexao com 
> autenticacao, uma lista de relatorios disponiveis e a execucao do 
> relatorio selecionado. 
> Para garantir que alguem nao salve uma pagina de relatorios e a execute 
> posteriormente sem logar, resolvi desenvolver um mecanismo (tipo Timer) 
> que mantem uma lista de quem se logou e tempo sem atualizacao (se nao 
> houver atualizacao por 10 min pex o usuario eh desconectado). Esta lista 
> contem entre outras coisas o IP e informacoes pessoais do usuario mas 
> preciso agora de algo com a porta para o caso de dois usuarios abrirem 
> uma secao na mesma estacao, pois senao nao terei como identificar de 
> quem sao as informacoes que armazenei no logon.

Pois eh, como eu havia dito antes, a questao de controle de secao 
(exatamente o que voce descreveu acima), faz parte da api de servlets, 
mais exatamente, implementado por: javax.servlet.http.HttpSession.

HttpSession fornece controle de secao tanto atraves de cookies ou
do que se chama URL rewriting (escrever a informacao de como parte
da URL). Pelos problemas que voce ja percebeu, esse processo nao
pode ser realizado simplesmente pelo endereco IP da maquina.

HttpSession apenas garante que o browser eh o mesmo que havia
acessado anteriormente, controlar o tempo da secao eh trabalho do 
seu servlet.

> 
> Uma outra duvida eh se devo dividir a parte de login, lista e execucao 
> em servlets distintos pois muitos metodos terao que ser synchronized, 
> impactando muito em performance. Ufa!!!!
> 

Bem, isso ja depende de como voce esta desenvolvendo. A questao de separar
ou nao em varios depende da arquitetura do seu servlet. 

Em geral, se voce tem funcionalidades diferentes, e que podem ser 
reaproveitadas, vale a pena separar em servlets diferentes, ou em pelo
menos componentes diferentes de uma mesma servlet (por exemplo,
criando um JavaBean para login, outro para lista, etc, e seu servlet
se utilizando desses componentes para realizar o trabalho). Tudo
depende de como voce arquiteta seu servlet.

Bruno.

> Obrigado pela atencao,
> 
> Heider
> 
> 
> >> 
> >> Caros,
> >> 
> >> 
> >> Gostaria de saber como posso identificar as requisicoes de uma 
> estacao 
> >> com dois browsers abertos, ou seja como eh possivel saber para quem 
> >> responder. Tenho o IP mas ainda preciso de mais um identificador. 
> Alguem 
> >> sabe???
> >> 
> >> 
> >> Obrigado,
> >> 
> >> Heider
> >> 
> >
> >Quem faz a relacao com a aplicacao que esta fazendo a requisicao 
> >eh o TCP/IP, atraves do mecanismos de "portas". Cada conexao possui 
> >um endereco IP e uma "porta", essa ultima em ultima instancia
> >identifica a aplicacao.
> >
> >Em geral, voce nunca necessita se preocupar com isso, dado que
> >ao receber a conexao do browser, voce sabera com que browser esta
> >falando, mas isso fica "escondido" no TCP/IP. Quando voce responde
> >(ou seja, envia dados de volta pela conexao iniciada pelo browser),
> >voce automagicamente estara respondendo para o browser correto, ja
> >que o TCP/IP sabe que aplicacao abriu a conexao (ou seja, o TCP/IP
> >sabe que "porta" de que endereco IP fez a requisicao).
> >
> >Se o seu problema eh identificar em varias conexoes HTTP diferentes
> >qual eh o browser, a resposta eh utilizando o suporte a secoes da
> >api de servlets, que mantera (em ultima analise, via cookies ou 
> >via chave de secao na URL) a relacao do browser com o servidor.
> >Isso so eh necessario se voce estiver falando de conexoes diferentes,
> >ja que o HTTP eh um protocolo "stateless" (ou seja, nao mantem estado),
> >e cada conexao eh independente de qualquer outra anterior.
> >
> >Bruno.
> >______________________________________________________________________
> >Bruno Peres Ferreira de Souza                         Sun Microsystems
> >System Engineer - Java Technologist         [EMAIL PROTECTED]
> >        if I fail, if I succeed, at least I live as I believe        
> >            
> >
> >
> 
> 
> ______________________________________________________
> Get Your Private, Free Email at http://www.hotmail.com
> * Para nao receber mais e-mails da lista, acesse 
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail, 
escolha a lista <[EMAIL PROTECTED]> e de um <submit>.


Bruno.
______________________________________________________________________
Bruno Peres Ferreira de Souza                         Sun Microsystems
System Engineer - Java Technologist         [EMAIL PROTECTED]
        if I fail, if I succeed, at least I live as I believe        
            


* Para nao receber mais e-mails da lista, acesse 
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail, escolha a 
lista <[EMAIL PROTECTED]> e de um <submit>.

Responder a