错误如下:
Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/F:/Tomcat%205.5/webapps/tjsm/WEB-INF/lib/struts2-core-2.0.11.2.jar!/struts-default.xml:30:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:208)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:131)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:201)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:223)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:304)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:77)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3600)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4189)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:904)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:867)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1112)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
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:275)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - file:/F:/Tomcat%205.5/webapps/tjsm/WEB-INF/classes/struts-default.xml:30:69 - bean - jar:file:/F:/Tomcat%205.5/webapps/tjsm/WEB-INF/lib/struts2-core-2.0.11.2.jar!/struts-default.xml:30:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:193)
... 33 more
2010-5-25 10:18:12 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2010-5-25 10:18:12 org.apache.catalina.core.StandardContext start
严重: Context [/tjsm] startup failed due to previous errors
log4j:WARN No appenders could be found for logger (org.springframework.web.context.support.XmlWebApplicationContext).
log4j:WARN Please initialize the log4j system properly.大家帮忙看看是什么问题?怎么解决呀?
我用到的开发框架和工具是:Myeclipse7.0 + tomcat5.5 + hibernate3.2 + spring2.5 + struts2.0,数据库是SQL Server2000,安装补丁包SP4。
Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/F:/Tomcat%205.5/webapps/tjsm/WEB-INF/lib/struts2-core-2.0.11.2.jar!/struts-default.xml:30:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:208)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:131)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:201)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:223)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:304)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:77)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3600)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4189)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:904)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:867)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1112)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
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:275)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - file:/F:/Tomcat%205.5/webapps/tjsm/WEB-INF/classes/struts-default.xml:30:69 - bean - jar:file:/F:/Tomcat%205.5/webapps/tjsm/WEB-INF/lib/struts2-core-2.0.11.2.jar!/struts-default.xml:30:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:193)
... 33 more
2010-5-25 10:18:12 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2010-5-25 10:18:12 org.apache.catalina.core.StandardContext start
严重: Context [/tjsm] startup failed due to previous errors
log4j:WARN No appenders could be found for logger (org.springframework.web.context.support.XmlWebApplicationContext).
log4j:WARN Please initialize the log4j system properly.大家帮忙看看是什么问题?怎么解决呀?
我用到的开发框架和工具是:Myeclipse7.0 + tomcat5.5 + hibernate3.2 + spring2.5 + struts2.0,数据库是SQL Server2000,安装补丁包SP4。
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:193)包冲突.! 工具添加支持,很多情况都会发生此情况.! 建议手动加包.!
目录有中文字符?
2010-5-25 10:18:12 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2010-5-25 10:18:12 org.apache.catalina.core.StandardContext start
严重: Context [/tjsm] startup failed due to previous errors
commons-logging-1.0.4.jar
freeer-2.3.8.jar
ognl-2.6.11.jar
struts2-core-2.0.11.2.jar
struts2-spring-plugin-2.0.11.2.jar
xwork-2.0.5.jar这几个包有问题吗?
简单的,留下
(xwork-2.0.5.jar、
commons-logging-1.0.4.jar、
freeer-2.3.8.jar、
ognl-2.6.11.jar、
struts2-core-2.0.11.2jar)就可以运行了.Tomcat安装路径最好不要有中文和空格,用'_'代替空格吧..
tomcat安装路径是F:\Tomcat 5.5
commons-logging-1.0.4.jar
freeer-2.3.8.jar
ognl-2.6.11.jar
struts2-core-2.0.14.jar
struts2-spring-plugin-2.0.14.jar
xwork-2.0.7.jar
需要struts-spring插件,但是插件加入后,不用再在struts的配置文件配置Spirng的ObjectFactory,因为Struts 2采用了如同Eclipse的插件加载机制,所以只要将spring插件加入后,Struts 2便可以自动发现。建议看一下struts2-spring插件中包含的内容。
楼上的,你的意思是struts2会自动配置和spring的连接,我的struts-default.xml中不需要在配置ObjectFactory了是吗?
The package name 'struts-default' at location package - jar:file:/F:/Tomcat/webapps/tjsm/WEB-INF/lib/struts2-core-2.0.14.jar!/struts-default.xml:74:52 is already been used by another package at location package - file:/F:/Tomcat/webapps/tjsm/WEB-INF/classes/struts-default.xml:119:49 - package - jar:file:/F:/Tomcat/webapps/tjsm/WEB-INF/lib/struts2-core-2.0.14.jar!/struts-default.xml:74:52
这个怎么解决呀?
我的struts-default.xml中部分源码如下:
<package name="struts-default" abstract="true">
<result-types>
<result-type name="chain"
class="com.opensymphony.xwork2.ActionChainResult" />
<result-type name="dispatcher"
class="org.apache.struts2.dispatcher.ServletDispatcherResult"
default="true" />
<result-type name="freeer"
class="org.apache.struts2.views.freeer.FreeerResult" />
<result-type name="httpheader"
class="org.apache.struts2.dispatcher.HttpHeaderResult" />
<result-type name="redirect"
class="org.apache.struts2.dispatcher.ServletRedirectResult" />
<result-type name="redirectAction"
class="org.apache.struts2.dispatcher.ServletActionRedirectResult" />
<result-type name="stream"
class="org.apache.struts2.dispatcher.StreamResult" />
<result-type name="velocity"
class="org.apache.struts2.dispatcher.VelocityResult" />
<result-type name="xslt"
class="org.apache.struts2.views.xslt.XSLTResult" />
<result-type name="plainText"
class="org.apache.struts2.dispatcher.PlainTextResult" />
<!-- Deprecated name form scheduled for removal in Struts 2.1.0. The camelCase versions are preferred. See ww-1707 -->
<result-type name="redirect-action"
class="org.apache.struts2.dispatcher.ServletActionRedirectResult" />
<result-type name="plaintext"
class="org.apache.struts2.dispatcher.PlainTextResult" />
</result-types>
<interceptors>
<interceptor name="alias"
class="com.opensymphony.xwork2.interceptor.AliasInterceptor" />
<interceptor name="autowiring"
class="com.opensymphony.xwork2.spring.interceptor.ActionAutowiringInterceptor" />
<interceptor name="chain"
class="com.opensymphony.xwork2.interceptor.ChainingInterceptor" />
<interceptor name="conversionError"
class="org.apache.struts2.interceptor.StrutsConversionErrorInterceptor" />
<interceptor name="cookie"
class="org.apache.struts2.interceptor.CookieInterceptor" />
<interceptor name="createSession"
class="org.apache.struts2.interceptor.CreateSessionInterceptor" />
<interceptor name="debugging"
class="org.apache.struts2.interceptor.debugging.DebuggingInterceptor" />
<interceptor name="externalRef"
class="com.opensymphony.xwork2.interceptor.ExternalReferencesInterceptor" />
<interceptor name="execAndWait"
class="org.apache.struts2.interceptor.ExecuteAndWaitInterceptor" />
<interceptor name="exception"
class="com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor" />
<interceptor name="fileUpload"
class="org.apache.struts2.interceptor.FileUploadInterceptor" />
<interceptor name="i18n"
class="com.opensymphony.xwork2.interceptor.I18nInterceptor" />
<interceptor name="logger"
class="com.opensymphony.xwork2.interceptor.LoggingInterceptor" />
<interceptor name="modelDriven"
class="com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor" />
<interceptor name="scopedModelDriven"
class="com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor" />
<interceptor name="params"
class="com.opensymphony.xwork2.interceptor.ParametersInterceptor" />
<interceptor name="prepare"
class="com.opensymphony.xwork2.interceptor.PrepareInterceptor" />
<interceptor name="staticParams"
class="com.opensymphony.xwork2.interceptor.StaticParametersInterceptor" />
<interceptor name="scope"
class="org.apache.struts2.interceptor.ScopeInterceptor" />
<interceptor name="servletConfig"
class="org.apache.struts2.interceptor.ServletConfigInterceptor" />
<interceptor name="sessionAutowiring"
class="org.apache.struts2.spring.interceptor.SessionContextAutowiringInterceptor" />
<interceptor name="timer"
class="com.opensymphony.xwork2.interceptor.TimerInterceptor" />
<interceptor name="token"
class="org.apache.struts2.interceptor.TokenInterceptor" />
<interceptor name="tokenSession"
class="org.apache.struts2.interceptor.TokenSessionStoreInterceptor" />
<interceptor name="validation"
class="org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor" />
<interceptor name="workflow"
class="com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor" />
<interceptor name="store"
class="org.apache.struts2.interceptor.MessageStoreInterceptor" />
<interceptor name="checkbox"
class="org.apache.struts2.interceptor.CheckboxInterceptor" />
<interceptor name="profiling"
class="org.apache.struts2.interceptor.ProfilingActivationInterceptor" />
<interceptor name="roles"
class="org.apache.struts2.interceptor.RolesInterceptor" />
<!-- 登陆与鉴权拦截器 -->
<interceptor name="loginInterceptor"
class="manager.student.cn.edu.core.interceptor.LoginInterceptor" /> <!-- Basic stack -->
<interceptor-stack name="basicStack">
<interceptor-ref name="exception" />
<interceptor-ref name="servletConfig" />
<interceptor-ref name="prepare" />
<interceptor-ref name="checkbox" />
<interceptor-ref name="params" />
<interceptor-ref name="conversionError" />
</interceptor-stack> <!-- Sample validation and workflow stack -->
<interceptor-stack name="validationWorkflowStack">
<interceptor-ref name="basicStack" />
<interceptor-ref name="validation" />
<interceptor-ref name="workflow" />
</interceptor-stack> <!-- Sample file upload stack -->
<interceptor-stack name="fileUploadStack">
<interceptor-ref name="fileUpload" />
<interceptor-ref name="basicStack" />
</interceptor-stack> <!-- Sample model-driven stack -->
<interceptor-stack name="modelDrivenStack">
<interceptor-ref name="modelDriven" />
<interceptor-ref name="basicStack" />
</interceptor-stack> <!-- Sample action chaining stack -->
<interceptor-stack name="chainStack">
<interceptor-ref name="chain" />
<interceptor-ref name="basicStack" />
</interceptor-stack> <!-- Sample i18n stack -->
<interceptor-stack name="i18nStack">
<interceptor-ref name="i18n" />
<interceptor-ref name="basicStack" />
</interceptor-stack> <interceptor-stack name="paramsPrepareParamsStack">
<interceptor-ref name="exception" />
<interceptor-ref name="alias" />
<interceptor-ref name="params" />
<interceptor-ref name="servletConfig" />
<interceptor-ref name="prepare" />
<interceptor-ref name="i18n" />
<interceptor-ref name="chain" />
<interceptor-ref name="modelDriven" />
<interceptor-ref name="fileUpload" />
<interceptor-ref name="checkbox" />
<interceptor-ref name="staticParams" />
<interceptor-ref name="params" />
<interceptor-ref name="conversionError" />
<interceptor-ref name="validation">
<param name="excludeMethods">
input,back,cancel
</param>
</interceptor-ref>
<interceptor-ref name="workflow">
<param name="excludeMethods">
input,back,cancel
</param>
</interceptor-ref>
</interceptor-stack> <interceptor-stack name="defaultStack">
<interceptor-ref name="exception" />
<interceptor-ref name="alias" />
<interceptor-ref name="servletConfig" />
<interceptor-ref name="prepare" />
<interceptor-ref name="i18n" />
<interceptor-ref name="chain" />
<interceptor-ref name="debugging" />
<interceptor-ref name="profiling" />
<interceptor-ref name="scopedModelDriven" />
<interceptor-ref name="modelDriven" />
<interceptor-ref name="fileUpload" />
<interceptor-ref name="checkbox" />
<interceptor-ref name="workflow">
<param name="excludeMethods">
input,back,cancel,browse
</param>
</interceptor-ref>
<!-- 自定义 -->
<interceptor-ref name="loginInterceptor" />
</interceptor-stack> <!-- The completeStack is here for backwards compatibility for
applications that still refer to the defaultStack by the
old name -->
<interceptor-stack name="completeStack">
<interceptor-ref name="defaultStack" />
</interceptor-stack> <!-- Sample execute and wait stack.
Note: execAndWait should always be the *last* interceptor. -->
<interceptor-stack name="executeAndWaitStack">
<interceptor-ref name="execAndWait">
<param name="excludeMethods">
input,back,cancel
</param>
</interceptor-ref>
</interceptor-stack> <!-- Deprecated name forms scheduled for removal in Struts 2.1.0. The camelCase versions are preferred. See ww-1707 -->
<interceptor name="external-ref"
</package>