现在我们正在使用Struts 2.5,我在Struts配置文件中Dynamic Method Invocation=true
。
我有如下操作映射。
<action name="action name" class="action class"
<result name="view" type="redirectAction"></result>
<allowed-methods>
view,modify,delete,duplicate
</allowed-methods>
</action>
要修复应用程序安全发现,我必须将动态方法调用设置为false
。
我已经设置了Dynamic Method Invocation value="false"
.现在允许的方法不起作用。
我确实用方法指定了多个操作,但它也没有用。它从Action
类调用默认reset
和process
方法,而不是指定的方法。
我已经读到,要allowed-methods
工作,我们必须将动态方法调用设置为true
?
如何在禁用动态方法调用的情况下使用相同的操作调用多个方法?
如果 DMI 被关闭,则无法动态调用方法;这就是关闭它的意义所在。
您可以使用严格方法调用来显式允许方法;默认情况下启用 SMI。
您不能同时拥有它 - DMI 已启用或未启用。