在大的项目的开发中,如果采用了struts2,就有可能有很多的struts2的配置文件,虽然struts2提供通配符和action的自动加载,但我们一般还是很难将所有的配置文件采用一个单一的action配置文件来解决,因此就产生了很多的action配置文件。如果我们将所有的配置文件存放在一个配置文件中,这样在项目间的协同开发和测试就会出现混乱,而最好的开发模式就是每个模块都有自己的action配置文件,而系统会自动搜索到所有的配置文件,采用自动加载的方式来完成struts2的初始化。
虽然在struts2中提供在web.xml文件中配置config参数,将说有需要加载的配置文件的路径写在其中,以逗号分隔,这样对于大的项目来说还是很难实施的,最好的办法还是采用自动扫描的方法,我们可以扩展struts2的ConfigurationProvider接口,在web.xml中配置自定义的加载类即可,这样就解决了struts2配置文件自动加载的问题。
另外,struts2的漏洞时升级到2.3.15.1时报下面错误
java.lang.NoSuchMethodError: ognl.SimpleNode.isEvalChain(Lognl/OgnlContext;)Z
原因是因为ognl的版本也需要跟着升级需要升级到3.0.6