Eu sou muito novo para servlets e desenvolvimento web em geral.
Então, basicamente eu tenho um servlet que consulta umbanco de dados e retorna alguns valores, como um nome. O que eu quero é transformar o nome em um link que abra uma página de detalhes para esse nome (com o qual outro servlet lidaria). Como posso enviar o nome para o outro servlet para que ele possa consultar um banco de dados sobre os detalhes relevantes?
Talvez eu esteja tomando a abordagem errada?
Edit: estou usando o Tomcat 5.5
Respostas:
2 para resposta № 1Passe como parâmetro de solicitação.
Adicione-o à sequência de consulta da URL do link para o outro servlet, que está disponível por request.getParameter("name")
no doGet()
método.
<a href="otherservlet?name=${name}">link</a>
Ou inclua-o como um campo de entrada oculto em um formulário POST que envia para o outro servlet que está disponível por request.getParameter("name")
no doPost()
método.
<form action="otherservlet" method="post">
<input type="hidden" name="name" value="${name}" />
<input type="submit" />
</form>
Veja também:
- Página de informações dos servlets - contém um Hello World
0 para resposta № 2
Não tenho certeza se entendi corretamente, mas você pode olhar para javax.servlet.RequestDispatcher e encaminhar a URL para o segundo servlet. O URL pode ser criado usando o nome:
http://myhost.mydomain/my.context/servlet2.do?name=John
0 para resposta № 3
Eu gostaria crie o URL no primeiro servlet ou em um cliente usando um modelo configurável para o URL. Desta forma, ambos os servlets estão claramente separados - você pode até ter cada um em uma máquina diferente.