请struts2高手进一下。整了2天了,注解加载出现有时加载有时没有加载的问题
现在项目使用struts2的注解进行action的加载。比如TemplateAction类
@ParentPackage("default")//default继承自struts-default
@Action(name = "template")
@Results( { @Result(name = "doQuery", type = NullResult.class, value = "/jsp/depms/temp/temp_list.jsp", params = {}),
@Result(name = "doQueryCorp", type = NullResult.class, value = "/jsp/depms/temp/temp_list_corp.jsp", params = {}),
@Result(name = "doAdd", type = NullResult.class, value = "/jsp/depms/temp/temp_add.jsp", params = {}),
@Result(name = "doAddCorp", type = NullResult.class, value = "/jsp/depms/temp/temp_add_corp.jsp", params = {}),
@Result(name = "preEdit", type = NullResult.class, value = "/jsp/depms/temp/temp_edit.jsp", params = {}),
@Result(name = "doEditBase", type = NullResult.class, value = "/jsp/depms/temp/temp_edit_base.jsp", params = {}),
@Result(name = "doView", type = NullResult.class, value = "/jsp/depms/temp/temp_view.jsp", params = {}) })
在控制输出了
class:class com.kehaoinfo.khsafe.depms.template.action.TemplateAction parent:null current:com.kehaoinfo.khsafe.depms.template.action
如果struts加载成功的情况下在调试模式下查看Dispatcher.configurationManager.configuration.runtimeConfiguration(此类是一个接口)查看内容如下
/dailyCheck //这个为其他action加载的
/templateChapter //这个为其他action加载的
/template
/plan //这个为其他action加载的
前台页面访问template!doQuery.action就可以。
struts加载失败 查看内容为
/khsafe/depms/template/action/accImage//这个为其他action加载的
/khsafe/depms/template/action/template
/khsafe/depms/template/action/templateChapter//这个为其他action加载的
前台页面访问进需要加上/khsafe/depms/template/action/template!doQuery.action 才能进行访问。
原先以为这个是命名空间的问题,于是乎给templateAction加上了一个
@NameSpace(value="") //指定使用默认命名空间。
还是有问题,于是我在试了一下添加一个命名空间
@NameSpace(value="/test") //指定命名空间需要加上test
原本以为问题能够解决,由于问题随机的(有时候加载成功)。重启了有N次之后。未加载的情况还是出现了。
请高手帮办给个思路,正在看struts2.1.6的源代码。头疼先来这上边要个思路