当发生错误事件时,我将结果链接到错误操作,当它全部发生在同一个命名空间中时,这可以正常工作,但是当跨命名空间链接时,链接操作的结果在链接操作命名空间中。
<package name="mynamespace-htm" namespace="/mynamespace/htm" extends="mybase-base">
<action name="newsItem" class="com.mypackage.control.GetNewsItemAction">
<result name="success">newsItem.jsp</result>
<result name="error" type="chain">
<param name="actionName">invalidSite</param>
<param name="namespace">/mynamespace</param>
</result>
</action>
</package>
<package name="mynamespace" namespace="/mynamespace" extends="mybase-base">
<action name="invalidSite" class="com.mypackage.control.GetInvalidSiteAction">
<result name="success">commonviews/invalidSite.jsp</result>
</action>
</package>
如果我newsItem
以一种导致错误结果的方式访问操作,我会得到一个异常javax.servlet.ServletException: File "/mynamespace/htm/commonviews/invalidSite.jsp" not found
,为什么它试图找到相对于原始命名空间的文件mynamespace/htm
而不是mynamespace
?