当在struts.xml中使用chain和redirectAction这两个类型结果的时候,会报检查错误!
Multiple annotations found at this line:
<wbr><wbr><wbr> - Undefined actionnamespace<br><wbr><wbr><wbr><wbr> parameter<br><wbr><wbr><wbr> - Undefined actionName parameter<br><br> 相信不少朋友会被这个错误折腾的很难受吧,现在说下解决方案,在百度和google上搜了很久,国外网站也看了下,半天都没找到解决方法,后来无意中在apache的网站上看到了struts2 chain的使用说明,仔细读了一下,就想到了一个办法,或许可以解决,于是就测试了一下,发现问题完全解决了,现在来说下一我的解决方法。<br><br> chain结果类型有4个属性,分别是:<br><br><wbr><wbr><wbr> actionName (default) - the name of the action that will be chained to<br><br><wbr><wbr><wbr> namespace - used to determine which namespace the Action is in that we're chaining. If namespace is null, this defaults to the current namespace<br><br><wbr><wbr><wbr> method - used to specify another method on target action to be invoked. If null, this defaults to execute method<br><br><wbr><wbr><wbr> skipActions - (optional) the list of comma separated action names for the actions that could be chained to<br><br> 其中actionName和namespace是必不可少的,否则就会报错。所以我在项目中就写成如下形式:<br> <package name="struts" extends="struts-default" namespace="/bg"><br><wbr><wbr><wbr><wbr><wbr><wbr> <action name="login" class="loginAction"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <result type="chain"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="actionName">index</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="namespace">/bg</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </result><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </action><br> </package><br><br> 但是这么写就有一个问题,我的项目比较简单,不想使用命名空间,于是我就想怎么解决这个问题呢,在看官方文档的时候我发现这么一句话:<br> A root namespace ("/") is also supported. The root is the namespace when a request directly under the context path is received. As with other namespaces, it will fall back to the default ("") namespace if a local action is not found.<br><br> 于是我就想,用"/"代替"/bg"不就可以解决问题了么。然后就把代码写成如下形式<br> <package name="struts" extends="struts-default" namespace="/"><br><wbr><wbr><wbr><wbr><wbr><wbr> <action name="login" class="loginAction"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <result type="chain"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="actionName">index</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="namespace">/</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </result><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </action><br> </package><br><br> 好了说到这里我想大家也都明白了该怎么解决chain和redirectAction这两个类型结果(type-result)报检查错误(validation)的问题了吧!<br> 有多的不对的地方还请大家多多指教!! </wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
Multiple annotations found at this line:
<wbr><wbr><wbr> - Undefined actionnamespace<br><wbr><wbr><wbr><wbr> parameter<br><wbr><wbr><wbr> - Undefined actionName parameter<br><br> 相信不少朋友会被这个错误折腾的很难受吧,现在说下解决方案,在百度和google上搜了很久,国外网站也看了下,半天都没找到解决方法,后来无意中在apache的网站上看到了struts2 chain的使用说明,仔细读了一下,就想到了一个办法,或许可以解决,于是就测试了一下,发现问题完全解决了,现在来说下一我的解决方法。<br><br> chain结果类型有4个属性,分别是:<br><br><wbr><wbr><wbr> actionName (default) - the name of the action that will be chained to<br><br><wbr><wbr><wbr> namespace - used to determine which namespace the Action is in that we're chaining. If namespace is null, this defaults to the current namespace<br><br><wbr><wbr><wbr> method - used to specify another method on target action to be invoked. If null, this defaults to execute method<br><br><wbr><wbr><wbr> skipActions - (optional) the list of comma separated action names for the actions that could be chained to<br><br> 其中actionName和namespace是必不可少的,否则就会报错。所以我在项目中就写成如下形式:<br> <package name="struts" extends="struts-default" namespace="/bg"><br><wbr><wbr><wbr><wbr><wbr><wbr> <action name="login" class="loginAction"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <result type="chain"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="actionName">index</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="namespace">/bg</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </result><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </action><br> </package><br><br> 但是这么写就有一个问题,我的项目比较简单,不想使用命名空间,于是我就想怎么解决这个问题呢,在看官方文档的时候我发现这么一句话:<br> A root namespace ("/") is also supported. The root is the namespace when a request directly under the context path is received. As with other namespaces, it will fall back to the default ("") namespace if a local action is not found.<br><br> 于是我就想,用"/"代替"/bg"不就可以解决问题了么。然后就把代码写成如下形式<br> <package name="struts" extends="struts-default" namespace="/"><br><wbr><wbr><wbr><wbr><wbr><wbr> <action name="login" class="loginAction"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <result type="chain"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="actionName">index</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> <param name="namespace">/</param><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </result><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr> </action><br> </package><br><br> 好了说到这里我想大家也都明白了该怎么解决chain和redirectAction这两个类型结果(type-result)报检查错误(validation)的问题了吧!<br> 有多的不对的地方还请大家多多指教!! </wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
本文介绍如何正确配置Struts2中的chain结果类型,避免出现检查错误。通过指定actionName和namespace属性,确保配置的有效性,即使在不使用命名空间的情况下也能正常工作。

1476

被折叠的 条评论
为什么被折叠?



