Reputation: 31
struts.xml File i have written this
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="default" extends="struts-default" namespace="/">
</package>
</struts>
web.xml File i have written this
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
jar file i took in web-inf/lib
when I am going to run this in eclispe that this will error
>>>SEVERE: Dispatcher initialization failed
>>>Unable to load configuration. - bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
>>> at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
>>> at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374)
>>> at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418)
>>> at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
>>> at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
>>> at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
>>> at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
>>> at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
>>> at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3693)
>>> at org.apache.catalina.core.StandardContext.start(StandardContext.java:4340)
>>> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>>> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>>> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>>> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
>>> at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
>>> at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
>>> at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
>>> at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>>> at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>>> at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>>> at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>>> at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>>> at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>>> at org.apache.catalina.core.StandardService.start(StandardService.java:516)
>>> at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>>> at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
>>>Caused by: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
>>> at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:221)
>>> at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
>>> at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:169)
>>> at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
>>> ... 31 more
>>>Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.1.8.1.jar!/struts-default.xml:29:72 - bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
>>> at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:205)
>>> ... 34 more
>>>Jan 30, 2014 11:57:43 AM org.apache.catalina.core.StandardContext filterStart
>>>SEVERE: Exception starting filter struts2
>>>Unable to load configuration. - bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
>>> at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:431)
>>> at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
>>> at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
>>> at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
>>> at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
>>> at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
>>> at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3693)
>>> at org.apache.catalina.core.StandardContext.start(StandardContext.java:4340)
>>> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>>> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>>> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>>> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
>>> at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
>>> at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
>>> at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
>>> at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>>> at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>>> at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>>> at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>>> at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>>> at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>>> at org.apache.catalina.core.StandardService.start(StandardService.java:516)
>>> at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>>> at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
>>>Caused by: Unable to load configuration. - bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
>>> at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
>>> at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374)
>>> at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418)
>>> ... 29 more
>>>Caused by: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
>>> at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:221)
>>> at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
>>> at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:169)
>>> at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
>>> ... 31 more
>>>Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.1.8.1.jar!/struts-default.xml:29:72 - bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
>>> at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:205)
>>> ... 34 more
>>>Jan 30, 2014 11:57:43 AM org.apache.catalina.core.StandardContext start
>>>SEVERE: Error filterStart
>>>Jan 30, 2014 11:57:43 AM org.apache.catalina.core.StandardContext start
>>>SEVERE: Context [/project] startup failed due to previous errors
Upvotes: 3
Views: 32820
Reputation: 655
This is a jar issue. You need to download all the latest struts jars.
Try the following jar libraries:
All common jars (freemarker.jar, javaassist.jar, ognl.jar, xwork-core.jar, struts2-core.jar) should have the latest version.
Especially ensure the xwork and struts2 core jars have the same version. These jar's are no longer optional after Java 8.
Upvotes: 5
Reputation: 1
The error is straight forward :
class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean .
Have you added the struts2-core-X.X.X.X.jar to your server class path ? Along with project build path.
If yes then remove. it will work.
Upvotes: 0
Reputation: 2500
Your problem has been mentioned in stack trace:
Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has
already been loaded by bean - jar:file:/F:/m/.metadata/.me_tcat/webapps/project/WEB-INF
/lib/struts2-core-2.1.8.1.jar!/struts-default.xml:29:72 - bean - jar:file:/F:/m/.metadata
/.me_tcat/webapps/project/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
It seems that you have multiple copies of struts2-core-*.jar
in your WEB-INF/lib
directory. I think you should only have one of them. Do some cleanup. Also see if your .classpath
does not have duplicate entries.
Upvotes: 8