【问题标题】:Simple usage of ActionForward Struts 1.3ActionForward Struts 1.3 的简单使用
【发布时间】:2016-07-12 06:25:47
【问题描述】:

我是 Struts 新手...

我正在尝试在 Struts 1.3 中实现最基本的 ActionForward。据我了解,ActionForward 是实现简单 JSP 导航的最基本方式,同时仍将控制逻辑委托给 Struts 控制器。我有一个 index.jsp,它是我部署应用程序时的默认页面。我用适当的 struts 标签库配置了 .jsp,我认为我的 struts 配置文件设置正确,但它不工作。下面是我的代码...

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>

我的 struts 配置中的动作映射

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

当我部署应用程序并单击链接转到 welcome.jsp 时,我收到以下错误...

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)

这是怎么回事?如果您需要更多代码来帮助确定问题,请告诉我。

【问题讨论】:

    标签: java struts


    【解决方案1】:

    你必须使用 org.apache.struts.actions.ForwardAction(它扩展了 Action)

    【讨论】:

    • 我的工作区中没有该类。我在我的 pom.xml 中使用 struts-core 1.3.10。您确定在这个 struts 版本中可以使用 ForwardAction 吗?
    • See the API将这些依赖项也添加到您的项目中: org.apache.strutsstruts-taglib1.3.10org.apache.strutsstruts-extras1.3.10
    • 成功了。显然 ForwardAction 只存在于 struts-extras jar 中。谢谢!
    猜你喜欢
    • 2013-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多