2016-03-24 11 views
2

Ich bin neu zu Struts ...Einfache Nutzung von Action Struts 1.3

Ich versuche, die grundlegendsten Action in Struts 1.3 zu implementieren. Nach meinem Verständnis ist ActionForward der einfachste Weg, einfache JSP-Navigation zu implementieren, während die Steuerlogik immer noch an den Struts-Controller delegiert wird. Ich habe eine index.jsp, die beim Bereitstellen der App die Standardseite ist. Ich konfigurierte die .jsp mit der entsprechenden Struts-Tag-Lib und ich denke, ich habe die Struts-Konfigurationsdatei richtig eingerichtet, aber es funktioniert nicht. Unten ist mein Code ...

index.jsp

<%@ taglib prefix="html" uri="http://struts.apache.org/tags-html"%> 

<html> 
<head> 
</head> 
<body> 
    <html:link page="/welcome.do">Click Me</html:link> 
</body> 
</html> 

Aktion Mapping in meinem Streben

<action-mappings> 
     <action path="/welcome" parameter="/welcome.jsp" type="org.apache.struts.action.ActionForward" /> 
</action-mappings> 

Config Wenn ich die App und klicken Sie auf den Link bereitstellen, um zu gehen die welcome.jsp bekomme ich den untenstehenden Fehler ...

javax.servlet.ServletException: java.lang.ClassCastException: org.apache.struts.action.ActionForward cannot be cast to org.apache.struts.action.Action 
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:622) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 

Was ist hier los? Bitte lassen Sie mich wissen, wenn Sie mehr Code benötigen, um das Problem zu ermitteln.

Antwort

3

Sie haben org.apache.struts.actions.ForwardAction zu verwenden (die Aktion erstreckt)

+0

Ich habe nicht diese Klasse verfügbar in meinem Arbeitsbereich. Ich benutze struts-core 1.3.10 in meiner pom.xml. Sind Sie sicher, dass ForwardAction in dieser Struts-Version verfügbar ist? – Jason

+0

[Siehe die API] (https://svn.apache.org/repos/asf/struts/archive/trunk/struts-doc-1.0.2/api/org/apache/struts/actions/ForwardAction.html) P.S. Fügen Sie auch diese Abhängigkeiten zu einem Projekt: org.apache.struts Streben-taglib 1.3.10 org.apache.struts Streben-Extras 1.3.10

+0

Das hat den Trick gemacht. Anscheinend existiert ForwardAction nur im Struts-Extras-Jar. Vielen Dank! – Jason