Erro ao acessar Servlet

Pessoal,

O que estou usando:

  • TomCat 4.1;
  • Java2;
  • Eclipse;
  • Windows XP Home.

Estou recebendo a seguinte mensagem de erro quando tento acessar uma página java, através de uma página html:

type Status report

message Servlet Empresa is currently unavailable

description The requested service (Servlet Empresa is currently unavailable) is not currently available.

O ruim é que essa não é a primeira aplicação que faço.

Se alguém puder me ajudar, agradeço.

{{ HTML }} <form action='..\Empresa' method='post'>

[code]{{ WEB.XML }}
<web-app>
<!–***UA 03 Declaracao de servlet e mapeamento–>
<servlet>
<servlet-name>
Empresa
</servlet-name>
<servlet-class>
cliente.Empresa
</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>
Empresa
</servlet-name>
<url-pattern>
/Empresa
</url-pattern>
</servlet-mapping>
</web-app> [/code]

[code]{{ java }}
package cliente;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**

  • @author JCVelasco
    */

public class Empresa extends HttpServlet
{
public String nome;
public int cnpjCpf;
public int iEstIdent;
public String tipoCliente;
public String eMail;
public String url;
public String tipoCadastro;
public String status;
public String enderecoComercial;
public String enderecoEntrega;
public String telefoneComercial;
public String telefoneFax;

public void doPost( HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
String numero = request.getParameter( "nomeEmpresa" );

     response.setContentType&#40; &quot;text/html&quot; &#41;; 
     PrintWriter out = response.getWriter&#40;&#41;; 

     out.println&#40;&quot;&lt;html&gt;&quot;&#41;; 
     out.println&#40;&quot;&lt;head&gt;&quot;&#41;; 
     out.println&#40;&quot;&lt;title&gt;WEB Project * Projeto WEB &#40;JAVA&#41; &lt;&lt; CADASTRO &gt;&gt;&quot;&#41;; 
     out.println&#40;&quot;&lt;/title&gt;&quot;&#41;; 
     out.println&#40;&quot;&lt;/head&gt;&quot;&#41;; 
     out.println&#40;&quot;&lt;h1&gt;&quot;&#41;; 
     out.println&#40;&quot;&lt;b&gt;Cadastro de Empresas&quot;&#41;; 
     out.println&#40;&quot;&lt;/b&gt;&quot;&#41;; 
     out.println&#40;&quot;&lt;/h1&gt;&quot;&#41;; 

// out.println("<h2>" + numero );
out.println("<br>");
out.println("<br>\r\n\r\n");
out.println("<a href=&quot;./html/empresa.html&quot;>Cadastrar Empresa");
out.println("</a> ");
out.println("<p>\r\n\r\n");
out.println("</body>\r\n");
out.println("</html>");
}

public Empresa( String empresa ,String enderecoCom ,String enderecoEnt ,
int cnpj ,int iest ,String email ,String site ,String telefone ,
String fax ,String tipocli ,String tipcad ,String situacao )
{
setNome(empresa);
} [/code]

tente definir sua action assim: action="/Empresa"

Matheus,

Primeiramente, quero agadecer a sua resposta e te informar que, infelizmente, minha estrutura de diretórios não permite que seja assim. Veja:

C:\WEBProject
C:\WEBProject\html
empresa.html (esse html que mencionei)
C:\WEBProject\jsp
C:\WEBProject\WEB-INF
web.xml
C:\WEBProject\WEB-INF\classes\Cliente
Empresa.class (o java que mencionei)

Obrigado,

José Márcio

[quote=“jmarcio_velasco”]Matheus,

Primeiramente, quero agadecer a sua resposta e te informar que, infelizmente, minha estrutura de diretórios não permite que seja assim.[/quote]

pq não? se a url pattern do teu servlet esta em /, pq não chamar de /? tu tentou?

Matheus,

Tentei, sim ! acontece que o diretório que o html está (C:\WEBProject\html\ ) é diferente do diretório do java (C:\WEBProject\WEB-INF\classes\Cliente) ocasionando a mensagem “The page cannot be found”), pois ele vai procurar em “http://jmarciofv:8081/Empresa”, sendo o correto “http://jmarciofv:8081/WEBProject/Empresa”. E quando ele procura nesta url mencionada ele apresenta a mensagem de erro “Servlet Empresa is currently unavailable”.

Como disse antes, não estou entendendo o que não está correto, uma vez que um outro projeto que fiz anteriormente (no curso) está funcionando.

Obrigado,

José Márcio

No action do form tenta o seguinte:

action="<%=request.getContextPath()%>/Empresa"

Matheus,

Me desculpe, mas eu sou muito burro ou estúpido (quem sabe os dois ?). É que eu coloquei outros métodos estranhos a um Servlet na mesma classe. Já tirei e já funcionou.

Obrigado pela sua ajuda e pela sua atenção. Se precisar de mim para alguma coisa é só gritar.

Um abraço,

José Márcio

preciso de uma BMW Z3 heahehaehuae :lol: