Bonjour,
Je ne comprends pourquoi j'ai cette erreur alors que j'ai suivi un tutoriel. voici l'erreur que j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 type Rapport d'exception message description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête. exception javax.servlet.ServletException: javax.servlet.ServletException: Request[/operations] does not contain handler parameter named 'operation'. This may be caused by whitespace in the label text. org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) cause mère javax.servlet.ServletException: Request[/operations] does not contain handler parameter named 'operation'. This may be caused by whitespace in the label text. org.apache.struts.actions.DispatchAction.unspecified(DispatchAction.java:197) org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:245) org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170) org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58) org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67) org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190) org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304) org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190) org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/6.0.10.
mon fichier de struts :
web.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_3.dtd"> <struts-config> <form-beans> <form-bean name="operationsForm" type="org.apache.struts.action.DynaActionForm"> <form-property name="operation" type="java.lang.String"/> <form-property name="reference" type="java.lang.String"/> </form-bean> </form-beans> <global-exceptions> </global-exceptions> <action-mappings> <action path="/operations" type="OperationsAction" name="operationsForm" scope="request" validate="true" parameter="operation"> <forward name="succes" path="/operations.jsp"/> </action> </action-mappings> <message-resources parameter="messages"></message-resources> </struts-config>
mon form
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 <?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>StrutsPhoneBook</display-name> <!-- Standard Action Servlet Configuration --> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <!-- Standard Action Servlet Mapping --> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <taglib> <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri> <taglib-location>/WEB-INF/struts-html.tld</taglib-location> </taglib> <taglib> <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri> <taglib-location>/WEB-INF/struts-bean.tld</taglib-location> </taglib> <taglib> <taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri> <taglib-location>/WEB-INF/struts-logic.tld</taglib-location> </taglib> <taglib> <taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri> <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location> </taglib> </web-app>
mon action :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 import org.apache.struts.action.ActionForm; public class OperationsForm extends ActionForm{ /** * */ private static final long serialVersionUID = 1L; private String reference; private String operation; /** * @return the operation */ public String getOperation() { return operation; } /** * @param operation the operation to set */ public void setOperation(String operation) { this.operation = operation; } /** * @return the reference */ public String getReference() { return reference; } /** * @param reference the reference to set */ public void setReference(String reference) { this.reference = reference; } }
mon index :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.actions.DispatchAction; public class OperationsAction extends DispatchAction{ public ActionForward ajouter(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { System.out.println("Appel de la methode ajouter()"); return (mapping.findForward("succes")); } public ActionForward modifier(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { System.out.println("Appel de la methode modifier()"); return (mapping.findForward("succes")); } public ActionForward supprimer(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { System.out.println("Appel de la methode supprimer()"); return (mapping.findForward("succes")); } }
Merci de m'aider,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <%@ taglib uri="WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="WEB-INF/struts-html.tld" prefix="html" %> <%@ taglib uri="WEB-INF/struts-logic.tld" prefix="logic" %> <html> <head> <SCRIPT language="javascript" type="text/javascript"> function setOperation(valeur){ document.forms[0].operation.value=valeur; } </SCRIPT> </head> <body> <html:form action="operations.do" focusIndex="reference"> <html:hidden property="operation" value="aucune"/> <bean:message key="form.reference"/><html:text property="reference"/><br/> <html:submit onclick="setOperation('ajouter')">Ajouter</html:submit><br/> <html:submit onclick="setOperation('modifier')">Modifier</html:submit><br/> <html:submit onclick="setOperation('supprimer')">supprimer</html:submit><br/> </html:form> </body> </html>
fk04
Partager