Servlets

Olá pessoal!
Estou tentando rodar uma servlet, o TomCat esta ok, meu WEB-INF esta ok meu web.xml configurado porém recebo o seguinte erro :

HTTP Status 503 - Servlet HelloServlet is currently unavailable

type Status report
message Servlet HelloServlet is currently unavailable
description The requested service (Servlet HelloServlet is currently unavailable) is not currently available.

Apache Tomcat/4.1.24

Agradeço desde já pelas colaborações.

Posta o seu web.xml ai, talvez haja algo errado com ele… :roll:

[]'s

Caio,
Obrigado pela força!

<?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>

&lt;!-- Indica ao Tomcat as Servlets da nossa aplicacao --&gt;

&lt;servlet&gt;
    &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt;
    &lt;servlet-class&gt;HelloServlet&lt;/servlet-class&gt;
&lt;/servlet&gt;

&lt;!-- Define um padrão de url através do qual a HelloServlet será acessada.
 No caso qualquer url do tipo 
 "http://localhost:8080/HelloServletApp/QualquerCoisa.teste"
 faz com que a nossa HelloServlet seja chamada --&gt;

&lt;servlet-mapping&gt;
    &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt; 
    <url-pattern>*.teste</url-pattern> 
&lt;/servlet-mapping&gt;

&lt;!-- Define outro padrão de url através do qual a HelloServlet será acessada.
 No caso, a url "http://localhost:8080/HelloServletApp/HelloServlet"
 faz com que a nossa HelloServlet seja chamada --&gt;

&lt;servlet-mapping&gt;
    &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt; 
    <url-pattern>/HelloServlet</url-pattern> 
&lt;/servlet-mapping&gt;

&lt;session-config&gt;
    &lt;session-timeout&gt;30&lt;/session-timeout&gt; &lt;!-- 30 minutes --&gt;
&lt;/session-config&gt;

</web-app>

Acho que teu alguma exception no teu servlet. De uma olhada nos logs do Tomcat, provavelmente estara la.
Se ele nao tivesse encontrado o servlet, o erro seria o 404 - not found.

Rafael

achei o seguinte log:
2003-11-12 12:50:36 StandardWrapperValve[HelloServlet]: Servlet HelloServlet is currently unavailable

Significa que o servlet não está disponível ou não foi encontrado???

soh isso? nenhuma exception?

um dos casos que esse erro pode acontecer eh quando voce acessa o servlet pela primeira vez e ele da algum pau… entao, qdo vc da reload, o tomcat marca o contexto dele como indisponivel, por causa do problema…

Rafael

Olhe se estou errando na configuração:
Tenho o dir C:/Utils/Tomcat/webapps/HelloServletApp/WEB-INF/classes
onde o WEB-INF/classes/HelloServlet.class (servlet)
WEB-INF/web.xml

está correto?

Parece que está certo. Mas no seu web.xml está faltando a tag :

&lt;servlet-mapping&gt; &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt; &lt;url-pattern&gt;*.teste&lt;/url-pattern&gt; &lt;/servlet-mapping&gt;

[]'s

O xml está correto e que não sei porque quando envio uma menssagem no forum desaparecem alguns caracteres ex: estou digitando um diretorio c:diretoriosubpasta, somem as barras…, vou tentar assim:

[<?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>

&lt;!-- Indica ao Tomcat as Servlets da nossa aplicacao --&gt;

&lt;servlet&gt;
    &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt;
    &lt;servlet-class&gt;HelloServlet&lt;/servlet-class&gt;
&lt;/servlet&gt;

&lt;!-- Define um padrão de url através do qual a HelloServlet será acessada.
 No caso qualquer url do tipo 
 "http://localhost:8080/HelloServletApp/QualquerCoisa.teste"
 faz com que a nossa HelloServlet seja chamada --&gt;

&lt;servlet-mapping&gt;
    &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt; 
    <url-pattern>*.teste</url-pattern> 
&lt;/servlet-mapping&gt;

&lt;!-- Define outro padrão de url através do qual a HelloServlet será acessada.
 No caso, a url "http://localhost:8080/HelloServletApp/HelloServlet"
 faz com que a nossa HelloServlet seja chamada --&gt;

&lt;servlet-mapping&gt;
    &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt; 
    <url-pattern>/HelloServlet</url-pattern> 
&lt;/servlet-mapping&gt;

&lt;session-config&gt;
    &lt;session-timeout&gt;30&lt;/session-timeout&gt; &lt;!-- 30 minutes --&gt;
&lt;/session-config&gt;

</web-app>][/code]

O xml está correto e que não sei porque quando envio uma menssagem no forum desaparecem alguns caracteres ex: estou digitando um diretorio c:diretoriosubpasta, somem as barras…, vou tentar assim:

&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;!-- Indica ao Tomcat as Servlets da nossa aplicacao --&gt;
    
    &lt;servlet&gt;
        &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt;
        &lt;servlet-class&gt;HelloServlet&lt;/servlet-class&gt;
    &lt;/servlet&gt;

    &lt;!-- Define um padrão de url através do qual a HelloServlet será acessada.
     No caso qualquer url do tipo 
     &quot;http&#58;//localhost&#58;8080/HelloServletApp/QualquerCoisa.teste&quot;
     faz com que a nossa HelloServlet seja chamada --&gt;
    
    &lt;servlet-mapping&gt;
        &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt; 
        &lt;url-pattern&gt;*.teste&lt;/url-pattern&gt; 
    &lt;/servlet-mapping&gt;
    
    &lt;!-- Define outro padrão de url através do qual a HelloServlet será acessada.
     No caso, a url &quot;http&#58;//localhost&#58;8080/HelloServletApp/HelloServlet&quot;
     faz com que a nossa HelloServlet seja chamada --&gt;
    
    &lt;servlet-mapping&gt;
        &lt;servlet-name&gt;HelloServlet&lt;/servlet-name&gt; 
        &lt;url-pattern&gt;/HelloServlet&lt;/url-pattern&gt; 
    &lt;/servlet-mapping&gt;

    &lt;session-config&gt;
        &lt;session-timeout&gt;30&lt;/session-timeout&gt; &lt;!-- 30 minutes --&gt;
    &lt;/session-config&gt;

&lt;/web-app&gt;

Cara, tenta tirar o primeiro servlet-mapping e deixar só o último.

:smiley:
Retirei o primeiro servlet-mapping , e não funcionou, depois reestartei o tomcat efuncionou…
Obrigado a todos!!

Dica: sempre que mudar o web.xml ou o conf.xml, as alterações só funcionarão ao restartar o tomcat :smiley: