[Struts-Layout] exception quand j'utilise <layout:submit&
Bonjour,
J'ai une exception qui se déclenche quand j'ajoute <layout:submit>.
Un bon exemple vaut mieux que des mots... comme 'ils' disent
test_calendar.jsp:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
<%@ taglib uri="/WEB-INF/struts-layout.tld" prefix="layout" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<html>
<head> <title>Test calendrier</title> </head>
<body>
<layout:html>
<layout:form action="/calendar.do" styleClass="FORM" key="Commander cours">
<layout:date key="Date1" name="CalendarForm" property="date1" mode="E,R,E" patternKey="dd/MM/y" />
<layout:date key="Date2" name="CalendarForm" property="date2" mode="E,R,E" patternKey="dd/MM/y" />
<layout:formActions>
<layout:submit />
<layout:reset />
</layout:formActions>
</layout:form>
</layout:html>
</body>
</html> |
et voici l'exception quand je clique sur le bouton 'Submit' ( à noter qu'il n'y a pas de problème quand je clique sur 'Reset'):
Code:
1 2 3 4 5 6 7 8 9
|
java.lang.ClassCastException: org.apache.struts.tiles.TilesUtilImpl
org.apache.struts.tiles.TilesRequestProcessor.initDefinitionsMapping(TilesRequestProcessor.java:84)
org.apache.struts.tiles.TilesRequestProcessor.init(TilesRequestProcessor.java:75)
org.apache.struts.action.ActionServlet.getRequestProcessor(ActionServlet.java:602)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1192)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802) |
Et ce que j'ai envie de dire c'est "Mais que viens faire Tiles dans l'histoire ?"
Quelques bouts importants du struts-config.xml au cas où ça a de l'importance :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
<form-beans>
<form-bean name="CalendarForm" type="CalendarForm" />
</form-beans>
<action-mapping>
<action path="/calendar"
name="CalendarForm"
type="CalendarAction"
scope="request"
input="/test_calendar.jsp">
<forward name="success" path="/test_calendar.jsp" />
</action>
</action-mapping>
<controller processorClass="fr.improve.struts.taglib.layout.workflow.LayoutRequestProcessor" /> |
Le fichier CalendarForm.java:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
// import ...
public class CalendarForm extends ActionForm {
// getters et setters de m_date1 et m_date2 ( type Date)
public void reset(ActionMapping mapping, HttpServletRequest request) {
m_date1 = null;
m_date2 = null;
}
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (getDate1() == null)
errors.add("date1", new ActionMessage("error.date.required"));
return errors;
}
} |
Le fichier CalendarAction.java :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
// import ...
public class CalendarAction extends Action {
public ActionForward execute(
ActionMapping mapping, ActionForm _form,
HttpServletRequest request, HttpServletResponse response
) throws Exception {
return mapping.findForward("success");
}
} |
Ma question est donc :
Il y a t'il un rapport avec Tiles et si oui pourquoi car je ne l'utilise nulle part !
Ah oui et si quelqu'un sait comment me virer cette exception de m... , je suis preneur. :wink:
Merci
[RESOLU][Struts-Layout] exception quand ajout<layout:subm
Merci , je l'avais rajouté je ne sais plus pourquoi et il n'avait pas posé de problème avant mais c'était bien le <controller ... /> qui faisait merder.