Reescrita de URL para identificação de sessão – (URL Rewriting)

O Container Tomcat no primeiro momento que recebe uma requisição (request) cria uma nova sessão (session) se solicitado através do código:

request.getSession();

… então o container, devolve a resposta (response) com um cookie contendo o identificador da sessão (session ID) bem como a re-escrita de URL (URL-Rewriting) contendo, também, o identificador da sessão (session).

Em uma segunda requisição (request) feita pelo cliente através do browser poderão ocorrer duas situações:

(1) O browser aceita cookies:

Neste caso, o Container Tomcat receberá do cliente a informação de identificador de sessão (session ID) de duas formas: pelo cookie como também adicionada à linha de request (request line).

(exemplo de linha de request com a informação de identificador de sessão adicionada)

Então o container ignora a informação de identificador de sessão (session ID) recebida através da linha de request (request line) e percebe que poderá usar cookies com determinado cliente, então, apesar da instrução presente (response.encodeURL(xxx);) o container não mais adiciona a informação de identificador de sessão (session ID) nos links de suas respostas (responses).

(2) O browser NÃO aceita cookies:

Neste caso como o browser não envia o cookie contendo o identificador de sessão (session ID), então o container Tomcat sempre irá adicionar esta informação nas suas respostas (response), lembrando que quando utilizado o comando (response.encodeURL(xxx)).

Segue um exemplo de uso do comando encodeURL(xxx):

out.println(“<a href=\”” + response.encodeURL(“/BeerTest.do”) + “\”> clique aqui </a>”);

Segue ilustração da explicação acima:

Anúncios
Esta entrada foi publicada em Servlet & JSP com as etiquetas . ligação permanente.

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão /  Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão /  Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão /  Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão /  Alterar )

Connecting to %s