Tudo bem pessoal?
Estou comecando a estudar servlets e fiz uma aplicacao que ao clicar em um botao ele salva as informacoes, e pode salvar quantas informacoes quiser e depois outro botao mostra todos os dados criados, e tenho a seguinte duvida.
Estou desenvolvendo uma simples aplicacao que esta dividida em tres partes.
1 Parte: Pagina HTML
Essa pagina HTML possui um pequeno formulario e quando clico no botao salvar ele pega os dados e envia para o primeiro servlet.
2 Parte: Servlet de armazenamento
Ele pega os dados enviados pela pagina HTML, cria um objeto e salva num ArrayList.
3 Parte: Servlet para visualizar dados
Ele pega os dados do ArrayList e mostra os dados em uma tabela.
Problema: Quando clico no botao para salvar, o primeiro servlet nao teria que mostrar nada mas ele abre uma pagina em branco e tenho que voltar para a pagina anterior para que a aplicacao continue rodando.
Queria tirar essa parte que aparece a pagina em branco e que eu pudesse so clicar no botao salvar e que apenas salvasse sem aparecer a pagina em branco.
[b]Segue os codigos:
HTML:[/b]
<HTML>
<HEAD> <TITLE> Form Servlet </TITLE> </HEAD>
<BODY>
<FORM name="form1" METHOD="GET" ACTION="http://localhost:8081/Topicos/ReceiveForm">
<BR>Nome: <input type="text" name="text_name">
<BR>Rua: <input type="text" name="text_rua">
<BR>Bairro: <input type="text" name="text_bairro">
<BR>Numero: <input type="text" name="text_numero">
<BR>Cel: <input type="text" name="text_cel">
<BR><input type="submit" name="btn_cadastrar" value="Cadastrar">
</FORM>
<FORM name="form2" METHOD="GET" ACTION="http://localhost:8081/Topicos/showPeople">
<BR><input type="submit" name="btn_mostrar" value="Mostrar Lista">
</FORM>
</BODY>
</HTML>
Servlet de armazenamento:
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class for Servlet: ReceiveForm
*
*/
public class ReceiveForm extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
static final long serialVersionUID = 1L;
static ArrayList listaCadastros = new ArrayList();
private Person p;
public ReceiveForm() {
super();
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
p = new Person();
p.setNomePerson(request.getParameter("text_name"));
p.setRuaPerson(request.getParameter("text_rua"));
p.setBairroPerson(request.getParameter("text_bairro"));
p.setNumeroPerson(request.getParameter("text_numero"));
p.setCelPerson(request.getParameter("text_cel"));
listaCadastros.add(p);
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
}
class Person {
private String nomePerson, ruaPerson, bairroPerson, numeroPerson, celPerson;
public void setNomePerson(String s) { nomePerson = s; };
public void setRuaPerson(String s) { ruaPerson = s; };
public void setBairroPerson(String s) { bairroPerson = s; };
public void setNumeroPerson(String s) { numeroPerson = s; };
public void setCelPerson(String s) { celPerson = s; };
public String getNomePerson() { return nomePerson; };
public String getRuaPerson() { return ruaPerson; };
public String getBairroPerson() { return bairroPerson; };
public String getNumeroPerson() { return numeroPerson; };
public String getCelPerson() { return celPerson; };
}
Servlet para mostrar dados:
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class for Servlet: showPeople
*
*/
public class showPeople extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
static final long serialVersionUID = 1L;
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#HttpServlet()
*/
public showPeople() {
super();
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Person p = new Person();
response.setContentType("text/html");
PrintWriter out = response.getWriter(); //associacao do fluxo - para onde vai os dados
String docType =
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+
"Transitional//EN\">\n";
out.println(docType);
out.println("<HTML>");
out.println("<HEAD><TITLE> Show People </TITLE></HEAD>");
out.println("<BODY BGCOLOR=\"#FDF5E6\">");
//criacao da tabela
out.println("<table name=\"table_people\" align=\"center\" border=\"1\">");
out.println("<tr>");
out.println("<td align=\"center\"><b>NOME</b></td>");
out.println("<td align=\"center\"><b>RUA</b></td>");
out.println("<td align=\"center\"><b>BAIRRO</b></td>");
out.println("<td align=\"center\"><b>NUMERO</b></td>");
out.println("<td align=\"center\"><b>CEL</b></td>");
out.println("</tr>");
for(int i=0; i<ReceiveForm.listaCadastros.size(); i++) {
p = (Person) ReceiveForm.listaCadastros.get(i);
out.println("<tr>");
out.println("<td align=\"center\">" + p.getNomePerson() + "</td>");
out.println("<td align=\"center\">" + p.getRuaPerson() + "</td>");
out.println("<td align=\"center\">" + p.getBairroPerson() + "</td>");
out.println("<td align=\"center\">" + p.getNumeroPerson() + "</td>");
out.println("<td align=\"center\">" + p.getCelPerson() + "</td>");
out.println("</tr>");
}
out.println("</table>");
out.println("</BODY>");
out.println("</HTML>");
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
}
Topico grande mas gosto de detalhar um poco para que nao tenham duvidas.
Obrigado desde ja e aguardo uma resposta.
abraco a todos