Erro ao acessar um Servlet [Resolvido]

2 respostas
R

Olá,

Estou tentando acessar um Servlet, mas aparece o seguinte erro:

EVERE: Allocate exception for servlet Servlet1

java.lang.NoClassDefFoundError: Servlet1 (wrong name: Default/Servlet1)

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClassCond(Unknown Source)

at java.lang.ClassLoader.defineClass(Unknown Source)

at java.security.SecureClassLoader.defineClass(Unknown Source)

at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2331)

at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:976)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1451)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1329)

at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1095)

at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:809)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)

at java.lang.Thread.run(Unknown Source)
<!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>

	<form action="Servlet1" method="GET">
		<fieldset>
			<legend>Contato</legend>
			<label>Código: 	<input type="text" name="codigo"/></label>
			<label>Nome :  	 	<input type="text" name="nome"/></label>
			<input type="submit" value="Adicionar"/>
		</fieldset>
		
	</form>		
</body>
</html>
package Default;
import java.io.PrintWriter;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class Servlet1 extends HttpServlet {

	private static final long serialVersionUID = 1L;

	public void service(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, java.io.IOException {
		
		PrintWriter out = response.getWriter();
		
		Produtos p = new Produtos();
		aluno.setCodigo(Integer.parseInt(request.getParameter("codigo")));
		aluno.setNome(request.getParameter("nome"));
		ProdutosDao pDao = new ProdutosDao();
			try {
				ProdutosDao.adiciona(p);
				out.println("<html>");
				out.println("<body>");
				out.println("registro Gravado");
				out.println("</body>");
				out.println("</html>");
			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>Web</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  	<servlet>
		<servlet-name>Servlet1</servlet-name>
		<servlet-class>Servlet1</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>Servlet1</servlet-name>
		<url-pattern>/Servlet1</url-pattern>
	</servlet-mapping>
  
</web-app>

Dentro da pasta WEB-INF, já tentei colocar / tirar a classe do Servlet, mas não vai.

As classes de DAO e Conexão, estão corretas, pois utilizo em outros projetos.

2 Respostas

tiagosilveira

acho que esta faltando colocar o caminho completo do package no web.xml.
Na tag blablabla.blabla.bla.Servlet1

R

Valeu!!

Era isso mesmo.

Criado 19 de abril de 2010
Ultima resposta 19 de abr. de 2010
Respostas 2
Participantes 2