Bom To Estudando Java EE agora. e to seguindo os exemplos do livro, bem cachorro esse livro…
agora to numa parte q tenho q digitar uns dados no form, e ele fazer o retorno no servlet.
Tipo
Servlet
package Servlets;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletOraculo extends HttpServlet{
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
retornarPagina(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String nome = req.getParameter("nome");
String ano = req.getParameter("ano");
if(nome.isEmpty() || ano.isEmpty()){
retornarPagina(req, resp);
}
else{
try{
String mensagem = nome + "! ";
int ano2 = Integer.parseInt(ano);
int idade = new Date().getYear() + 1900 - ano2;
if(idade < 25){
mensagem += "Você ta no Ponto";
}
else if (idade < 45){
mensagem += "Dá Pra Encarar";
}
else {
mensagem += "Você Ta Soh o Pó";
}
processaRetorno(req, resp, mensagem);
}
catch (NumberFormatException e) {
e.printStackTrace();
processaErro(req, resp, e);
}
}
}
private void retornarPagina(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.sendRedirect("form.html");
}
public void processaRetorno(HttpServletRequest req, HttpServletResponse resp, String mensagem)
throws ServletException, IOException {
PrintWriter out = resp.getWriter();
out.println("<html>");
out.println("<title>Resultado - ServletOraculo</title>");
out.println("<body bgcolor=\"skyblue\">");
out.println("<b> Mensagem: " + mensagem + "<b>");
out.println("</body>");
out.println("</html>");
}
private void processaErro(HttpServletRequest req, HttpServletResponse resp, Exception e)
throws ServletException, IOException {
PrintWriter out = resp.getWriter();
out.println("<html>");
out.println("<title>Erro - ServletCalculadora</title>");
out.println("<body bgcolor=\"lightgreen\">");
out.println("<pre>");
out.println(e);
out.println("</body>");
out.println("</html>");
}
}
Xml
<!-- Mapeando o Servlet Hello -->
<servlet>
<servlet-name>ServletOraculo</servlet-name>
<servlet-class>Servlets.ServletOraculo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletOraculo</servlet-name>
<url-pattern>/ServletOraculo</url-pattern>
</servlet-mapping>
E o Html
<html>
<title>Formulário de Parametros - Parte 2</title>
<body>
Preencha o Formulário abaixo e envie para o Oraculo da Sorte!
<br>
<form name="formulario" action="/ServletOraculo" method="POST">
<table>
<tr>
<td> Nome:</td> <td><input name="nome"> </td>
</tr>
<tr>
<td>Ano Nascimento: </td> <td><input name="ano"> </td>
</tr>
<tr>
<td><input name="submit" value="Enviar" type="submit"> </td>
</tr>
</table>
</form>
</body>
</html>
Estranho n consigo fazer rodar, ta dando 404, n sei pq n axa o servlet…
alguem pod me ajudar? Obrigado =D