Erro

ao clicar no botão para submeter estou obtendo a mensagem de erro abaixo. O que pode ser ?

HTTP Status 500 -


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Wrapper cannot find servlet class ConsultaServlet or a class it depends on
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:175)
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:383)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:207)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:647)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:499)
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:575)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:649)
java.lang.Thread.run(Thread.java:534)

root cause

java.lang.ClassNotFoundException: ConsultaServlet
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1373)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1220)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:175)
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:383)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:207)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:647)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:499)
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:575)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:649)
java.lang.Thread.run(Thread.java:534)

note The full stack trace of the root cause is available in the Tomcat logs.


Java Web Services Developer Pack/1.3 :cry:

A aplicação não está encontrando seu Servlet.

Verifica se ele está configurado corretamente no WEB.XML.

utilize os elementos abaixo para registrar a sua servlet:

<servlet>
     <servlet-name></servlet-name>
     <servlet-class></servlet-class>
</servlet>

<servlet-mapping>
   <servlet-name></servlet-name>
   <url-pattern></url-pattern>
</servlet-mapping>

Caso tenha alguma dúvida ainda, poste o seu WEB.XML para possamos dar uma olhada, assim fica mais fácil de ajudar. :wink:

Falou.

aí vai a web.xml:

<?xml version=“1.0” encoding=“ISO-8859-1”?>

<!DOCTYPE web-app
PUBLIC “-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN”
http://java.sun.com/dtd/web-app_2_3.dtd”>

<web-app>
<display-name>Trabalho Comercio Eletronico</display-name>
<description>
Trabalho Comercio Eletronico.
</description>
<servlet>
<servlet-name>ConsultaServlet</servlet-name>
<servlet-class>ConsultaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConsultaServlet</servlet-name>
/servlet/ConsultaServlet
</servlet-mapping>
</web-app>

a estrutura de diretórios está assim:

jwsdp
webapps
trabweb
-index.html
web-inf
-web.xml
servlets
-consultaservlet

[quote=“ciclope”]aí vai a web.xml:

&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;
&lt;!DOCTYPE web-app
    PUBLIC &quot;-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN&quot;
    &quot;http&#58;//java.sun.com/dtd/web-app_2_3.dtd&quot;&gt;

&lt;web-app&gt;
&lt;display-name&gt;Trabalho Comercio Eletronico&lt;/display-name&gt;
    &lt;description&gt;
      Trabalho Comercio Eletronico.
    &lt;/description&gt;
&lt;servlet&gt;
        &lt;servlet-name&gt;ConsultaServlet&lt;/servlet-name&gt;
        &lt;servlet-class&gt;ConsultaServlet&lt;/servlet-class&gt;
    &lt;/servlet&gt;
&lt;servlet-mapping&gt;
        &lt;servlet-name&gt;ConsultaServlet&lt;/servlet-name&gt;
        &lt;url-pattern&gt;/servlet/ConsultaServlet&lt;/url-pattern&gt; --- servlet p/ servlets
&lt;/servlet-mapping&gt;
&lt;/web-app&gt;

[/quote]

Na tua estrutura de diretório está: servlets e no URL-PATTERN do WEB.XML está servlet, sem o “s”.

Pode ser isto. :wink:

Alterei o web.xml. Mas continua com erro. Agora está dando o seguinte:

HTTP Status 404 - Servlet ConsultaServlet is not available


type Status report

message Servlet ConsultaServlet is not available

description The requested resource (Servlet ConsultaServlet is not available) is not available.


Java Web Services Developer Pack/1.3

[quote=“ciclope”]aí vai a web.xml:

<?xml version=“1.0” encoding=“ISO-8859-1”?>

<!DOCTYPE web-app
PUBLIC “-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN”
http://java.sun.com/dtd/web-app_2_3.dtd”>

<web-app>
<display-name>Trabalho Comercio Eletronico</display-name>
<description>
Trabalho Comercio Eletronico.
</description>
<servlet>
<servlet-name>ConsultaServlet</servlet-name>
<servlet-class>ConsultaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConsultaServlet</servlet-name>
/servlet/ConsultaServlet
</servlet-mapping>
</web-app>

a estrutura de diretórios está assim:

jwsdp
webapps
trabweb
-index.html
web-inf
-web.xml
servlets
-consultaservlet[/quote]

  • Verifica se o nome do teu servlet está correto, se tu respeitou maiúsculas e minúsculas, pois o java é Case Sensitive. :wink:

O nome do Servlet está correto, isto não está errado. É ConsultaServlet.

Cara, passei por um problema parecido com este.

Resolvi da seguinte maneira:

  • Como utilizo o Eclipse, dei um Rebuild no meu projeto e estartei novamente o Tomcat, após isso tudo voltou ao normal.
  • O problema era bastante parecido, estava com alguns nomes errados.

O que você está utilizando para desenvolver suas aplicações?