Struts2 在struts.xml中引用httpheader中的actionerror会导致

Struts2 在struts.xml中引用httpheader中的actionerror会导致,struts2,Struts2,在我的TestClass操作中,我使用addActionError方法设置了一个操作错误。我在struts.xml中定义了一个操作,如下所示 <action name="TestAction" class="TestClass"> <result name="input">/jsp/test.jsp</result> <result name="error" type="httpheader"> <param n

在我的TestClass操作中,我使用addActionError方法设置了一个操作错误。我在struts.xml中定义了一个操作,如下所示

<action name="TestAction" class="TestClass">
    <result name="input">/jsp/test.jsp</result>
    <result name="error" type="httpheader">
       <param name="error">409</param>
       <param name="errorMessage">${SOME-EXPRESSION}</param>
    </result> 
</action>

/jsp/test.jsp
409
${SOME-EXPRESSION}
目的是让错误消息显示使用addActionError添加的内容。根据org.apache.struts2.dispatcher.HttpHeaderResult文档,我应该能够在errorMessage参数中使用Ognl表达式

那么,在这个场景中,是否有可能将引用actionerror的${SOME-EXPRESSION}替换为它。(我尝试了${actionerror},但没有成功)


我知道,我可以通过在action类中声明我自己的字段(例如“errorText”)并使用addActionError的替代方法,在param标记中使用${errorText}引用它,来解决问题。但是在我走这条路线之前,我想确定这是唯一的方法。

操作错误存储在一个列表中,因此您必须显示类似${actionErrors[0]}的内容。但请记住,这样它只会显示您添加的第一个错误,而不是使用addActionError包含的所有错误。

操作错误存储在列表中,因此您必须显示类似${actionErrors[0]}的内容。但请记住,这样它只会显示您第一次添加的错误,而不是使用addActionError包含的所有错误。

谢谢!正是我要找的汉克斯!正是我想要的