Problema com URL e requestdispatcher

Olá boa a tarde a todos,

tenho uma pagina JSP com um formulário que aponta atraves do atribtuo action para um Servlet LoginController,

quando acionado através de um button do formulário funciona perfeitamente sem nenhum problema.

entretanto ao final da execução do Servlet LoginController é executado o seguinte código:

	RequestDispatcher dispatcher = application.getRequestDispatcher("/index.jsp");
	dispatcher.forward(request, response);

o url que é apresentado no browser com a pagina index.jsp é:

http://localhost:8080/LoginController

alguém saberia me dizer como posso alterar o url que aparece no browser ?

ou seja após a chamada e execução do Servle LoginControllert e o RequestDispatcher, o url apontar para http://localhost/index.jsp

saudações a todos,

Cara não tem como. Entenda, o requestDispacher serve para que seu servlet execute algo com ajuda de outro servlet ou jsp, dai a url não muda pois a ação é feita tudo no container, para que a url mudasse vc teria de usar um redirect, mas ai sua logica teria de mudar um pouco, pq com o redirect vc passa a execução da ação para outro modulo fazer!

com o forward não tem como, você deve utilizar o sendRedirect que força o browser a fazer uma nova solicitação para a url que você quer, deixando esta nova url no endereço do browser.

de uma olhada neste link http://www.roseindia.net/servlets/SendRedirect.shtml que irá te ajudar

Olá boa tarde a todos,

obrigado por responder a essa questão,

Thiago, acha então que seria possivel trabalhar com a mesma estratégia ao final da execução do servlet ?

utilizar um comando:

response.sendRedirect("/index.jsp");

no exemplo que vc envio atravpes do link, o comando response.sendRedirect("/ServletProject/ValidUser");

desvia para um outro servlet, o que também é uma saída bastante interessante,

saudações a todos,

Lembrando que se vc utilizar o sendRedirect as informações contidas na requisição atual serão perdidas.

muito pertinente sua observação,

devo armazenar os estados no bean, em seguida a execução do comando response.sendRedirect,

vamos ver como se comporta, obrigado pela atenção,

saudações

olá boa noite,

apenas para fechar, funcionou perfeitamente,

como resultado a url do browser fica de acordo com a string que esta no comando response.sendRedirect("/index.jsp");

saudações a todos