小编典典

Struts操作中的多个入口点(迁移Struts 2.2.3-> 2.3.1)

jsp

我在struts.xml中有一个动作

<action name="reprint" class="reprintAction">
        <result name="success" type="redirectAction">
            <param name="actionName">reprint</param>
            <param name="namespace">/x</param>
            <param name="errorFlag">${errorFlag}</param>
            <param name="message">${message}</param>
        </result>
        <result name="view">/jsp/reprintOverview.jsp</result>
</action>

一个JSP:

<s:form action="reprint">
    <s:select name="selectedPdfPrinter" list="shopPdfPrinterList" listKey="deviceId" listValue="deviceId" theme="simple"/>
    <s:submit value="Print" theme="simple" method="shopPdfReprint"/>
</s:form>

具有多个表单元素,所有元素都绑定到一个动作。每个表单都有一个单独的带有不同按钮的提交按钮method(例如“
shopPdfReprint”)。每个method都映射到相应类中的方法。

Struts 2.2.3一切正常。但是在迁移到2.3.1之后,方法映射不起作用。而不是调用相应的方法(例如“
shopPdfReprint”),仅execute调用类的-method。

我看了看文档,但是很遗憾,没有发现任何线索,如何适应2.3.1有人遇到了这个问题?感谢帮助:]


阅读 223

收藏
2020-06-08

共1个答案

小编典典

发生这种情况是因为您已关闭DMI。method即使重新发送了安全修复程序,该属性也可以像以前一样使用Submit标签。使用常量启用DMI

<constant name="struts.enable.DynamicMethodInvocation" value="true"/>

让我知道它是否无效。

2020-06-08