刚刚学习struts.按照官方配置加入struts-2.3.14-lib必要的jar到lib下,遇到如下异常,到网上搜索,一般的结论都是说不能少jar,也不能多jar.多的情况我没试验,但按照官方说明“the minimal required”推论,多了应该是没问题的。而根据如下异常不是struts2-gxp-plugin-2.3.1.jar插件没导入的原因,而是struts.xml配置有问题。最后修改struts.xml后,一切OK.
异常如下:Caused by: java.lang.ClassNotFoundException: org.apache.struts2.views.gxp.inject.InjectedObjectContainer
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:297)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:64)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:43)
at com.opensymphony.xwork2.util.ClassLoaderUtil.loadClass(ClassLoaderUtil.java:157)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:203)
官方配置如下:
Now that we know we have a working Java web application, lets add the minimal required Struts 2 framework Jar files to our web application's class path. We'll copy these Jar files from the lib folder of the Struts 2 download to the WEB-INF/lib folder in our web application.
Find and copy to WEB-INF\lib these files (note X.X.X.X.jar refers to the version number):
- asm-x.x.jar
- asm-commons-x.x.jar
- asm-tree-x.x.jar
- commons-io-X.X.X.jar
- commons-lang3-X.X.X.jar
- commons-fileupload-X.X.X.jar
- freemarker-X.X.X.jar
- javassist-X.X.X.jar
- ognl-X.X.X.jar
- struts2-core-X.X.X.X.jar
- xwork-core-X.X.X.jar