包名中含有action (cn.action) 就不会出错,包名中去掉action (cn) 就出错,这是什么神仙错误??????????????????????
There is no Action mapped for namespace [/] and
action name [hello] associated with context path [/WebStruts2.3].
<---------------------------------------------找到答案了----------------------------------------------------->
QA:我们在action类中定义了注解,strtus2框架怎样识别它们?
1.在我们导入的struts2-convention-plugin
中的struts-plugin.xml
中有这么一句配置:
<constant name="struts.convention.package.locators" value="action,actions,struts,struts2"/>
要求我们的action类所属的包名中需要包含action,actions,struts,struts2
这几个关键字之一,只有这样struts2框架才能识别我们的注解。否则会出现上述错误。
2.如果非要不使用这几个关键字,那么你得在struts.xml
中进行配置;比如说你的包中含有关键字web,那么你要这样配置,修改value的值。
<constant name="struts.convention.package.locators" value="web"/>
终于解决了。。。