Bom pessoal,
Dessa vez estou tendo problemas na criação do ControllerServlet. O problema é que na hora de acessar o endereço: "http://localhost:8080/jspteste/mvc?business=TestaMVC" eu obtenho um Erro 404 do Apache Tomcat
Erro do Apache Tomcat
HTTP Status 404 -
--------------------------------------------------------------------------------
type Status report
message
description The requested resource () is not available.
--------------------------------------------------------------------------------
Apache Tomcat/6.0.18
web-xml
<servlet>
<servlet-name>spy</servlet-name>
<servlet-class>br.com.caelum.mvc.ControllerServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>syp</servlet-name>
<url-pattern>/mvc</url-pattern>
</servlet-mapping>
Business Logic.java
package br.com.caelum.mvc;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public interface BusinessLogic {
void execute (HttpServletRequest request, HttpServletResponse response) throws Exception;
}
Testa-MVC
package br.com.caelum.mvc;
import javax.servlet.RequestDispatcher;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestaMVC implements BusinessLogic {
@Override
public void execute(HttpServletRequest request, HttpServletResponse response)
throws Exception {
System.out.println("Executando a lógica e redirecionando...");
RequestDispatcher rd = request.getRequestDispatcher("/mvc-ok.jsp");
rd.forward(request, response);
}
}
ControllerServlet.java
package br.com.caelum.mvc;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ControllerServlet extends HttpServlet{
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String business = request.getParameter("business");
String className = "br.com.caelum.mvc." + business;
try {
Class clazz = Class.forName(className);
BusinessLogic businessLogic = (BusinessLogic)clazz.newInstance();
businessLogic.execute(request, response);
} catch (Exception e) {
throw new ServletException ("A lógica de negócios causou uma exceção", e);
}
}
}
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>MVC-OK</h1>
</body>
</html>
Alguém consegue me ajudar nessa? Ja avaliei todos os códigos e nada. Não sei se é alguma configuração...
Seria de grande ajuda.
Muito obrigado,
metanolbr