最近项目使用了比较多的零配置和自动注入的语法,遇到了点小问题。
一般在本地eclipse开发完成后,发布上服务器上都是采用jar包的形式将业务逻辑代码打包好放到WEB-INF/lib下,遇到了在本地可以正常访问的action,到了linux环境访问就找不到action了
查阅了相关材料,解决方案如下:
方法1、采用ant打包时,采用class文件全部放到WEB-INF/classes下,这样的弊端的项目显得比较散,发布起来由于文件过多,比较难维护
方法2、增加struts.xml(本来以为使用了零配置就不用写这个文件了)
<!-- 扫描Action的Jar包 -->
<constant name="struts.convention.action.includeJars" value=".*/项目jar包名称-([\.]?[\d]*)*\.jar(!/)?" />
这样就可以了,原因可能是需要告诉struts框架我们的action在哪个包下面才会扫描(有知道的同志请告知具体原因)