错误信息:
java.lang.NoSuchMethodError: com.opensymphony.xwork2.config.ConfigurationManager.addContainerProvider(Lcom/opensymphony/xwork2/config/ContainerProvider;)V
at org.apache.struts2.dispatcher.Dispatcher.init_DefaultProperties(Dispatcher.java:310).....
在struts 2.2.1.1中,org.apache.struts2.dispatcher.FilterDispatcher is now deprecated。因此,需要将web.xml中的配置做如下修改:
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
修改为:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
在struts-2.5-BETA1中,过滤器所在的包又有了变化,没有ng包了,如下所示:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
在struts2.3.24中,校验器的注册文件default.xml在xwork的jar文件中(com.opensymphony.xwork2.validator.validators)
在struts2.5-BETA1中xwork的包合并到struts2-core-2.5-BETA1.jar中了。
datetimepicker标签在struts-core-2.0.14.jar中,但是在struts 2.3.24变成在struts2-dojo-plugin-2.3.24.jar中了。原来可以显示,在struts 2.3.2时却不能显示的解决办法:
在jsp文件中增加如下行
<head>
<sx:head />
</head>