J2ee - Erreur dans mon code
Résolu
mero
-
mero -
mero -
Bonjour,
Je suis débutant en J2EE et je travaille sur un environnement Tomcat 7.0.37/Eclipse, j'ai créé un Servlet Test qui affiche le login et le mot de pass à l'aide d'un fichier xml nommé "web.xml". Mais si je lance "http://localhost:8080/dynamique" et quand je rempli le formulaire et l'envoye je rencontre l'erreur suivant :
description Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.
exception
javax.servlet.ServletException: La classe web.servl n'est pas une servlet
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
cause mère
java.lang.ClassCastException: web.servl cannot be cast to javax.servlet.Servlet
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/7.0.37.
voila mes code : pour le code index.html:
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="login" method="post" /><br/>
login:<input type="text" name="login" /><br/>
password:<input type="text" name="login" /><br/>
<input type="submit" name="do" value="send">
</form>
</body>
</html>
le codeweb.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<servlet>
<servlet-name>servl</servlet-name>
<servlet-class>web.servl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servl</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>
le code servlet.java
/**
*
*/
package web;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @author user1
*
*/
public class servl {
public void init()
{}
protected void doPst(HttpServletRequest req,HttpServletResponse resp)
throws ServletException, IOException
{
String l=req.getParameter("login");
String p=req.getParameter("pass");
PrintWriter pr=resp.getWriter();
pr.println("<html><body>");
pr.println("votre login est:"+l +"<br />");
pr.println("votre mot de pass est:"+p +"<br />");
pr.println("</body></html>");
}
public void destroy()
{}
}
besoin de vous aide! merci d'avance
Je suis débutant en J2EE et je travaille sur un environnement Tomcat 7.0.37/Eclipse, j'ai créé un Servlet Test qui affiche le login et le mot de pass à l'aide d'un fichier xml nommé "web.xml". Mais si je lance "http://localhost:8080/dynamique" et quand je rempli le formulaire et l'envoye je rencontre l'erreur suivant :
description Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.
exception
javax.servlet.ServletException: La classe web.servl n'est pas une servlet
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
cause mère
java.lang.ClassCastException: web.servl cannot be cast to javax.servlet.Servlet
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/7.0.37.
voila mes code : pour le code index.html:
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="login" method="post" /><br/>
login:<input type="text" name="login" /><br/>
password:<input type="text" name="login" /><br/>
<input type="submit" name="do" value="send">
</form>
</body>
</html>
le codeweb.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<servlet>
<servlet-name>servl</servlet-name>
<servlet-class>web.servl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servl</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>
le code servlet.java
/**
*
*/
package web;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @author user1
*
*/
public class servl {
public void init()
{}
protected void doPst(HttpServletRequest req,HttpServletResponse resp)
throws ServletException, IOException
{
String l=req.getParameter("login");
String p=req.getParameter("pass");
PrintWriter pr=resp.getWriter();
pr.println("<html><body>");
pr.println("votre login est:"+l +"<br />");
pr.println("votre mot de pass est:"+p +"<br />");
pr.println("</body></html>");
}
public void destroy()
{}
}
besoin de vous aide! merci d'avance
A voir également:
- J2ee - Erreur dans mon code
- Code ascii - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
type Rapport d''état
message La méthode HTTP POST n''est pas supportée par cette URL
description La méthode HTTP spécifiée n''est pas autorisée pour la ressource demandée.