`

ssh零配置_项目Demo

    博客分类:
  • ssh
 
阅读更多

最经在学习ssh零配置,在项目搭建的过程中,碰到了下面几个问题,所以自己记录一下:

1、action.java文件放在没有包含action文字命名的package中,框架找不到该action;原因是加入struts2-convention-plugin.jar后,该插件默认扫描的包是包名中包含action,actions,struts,struts2的包及其子包下的有注解的类,想要修改插件扫描的包名的话,可以通过下面这个常量:

   Convention会试图从指定包中发现Action类。     <constant name="struts.convention.action.packagesvalue="com.home.prog" />

 

2、action.java文件中如果存在带事务注解的方法的话,@Resource注入的serice属性值总是为null,网上解释是【使用CGLib代理Action类后,使用@Autowired注入的service类将会为null,所以只有使用Spring的自动装配策略,action才能成功注入service接口】(具体原因不知道),但是经过实践下来,有两种解决方案:

     a:在action中加上service属性的get,set方法(@resource不起作用);

     b:在struts.xml文件中加上该常量,并设置为true(@resource起作用);

         <constant name="struts.objectFactory.spring.autoWire.alwaysRespect" value="true" />

 

详细配置请参照附件,由于jar包比较大,所以附件中不包含所需的jar,需要jar包,请通过下面的连接下载:

http://pan.baidu.com/s/1ntM6tD3

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics