第一次发帖,大家帮帮我吧

pspddd 2010-04-24 10:44:06
用struts2 spring hibernate做了个小程序,但是每次部署时都是报以下错误,我的各个jar文件都引了,试了好几次,就是不对,大家帮帮我吧!


2010-4-24 20:33:18 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
Unable to load configuration. - bean - jar:file:/C:/tomcat6/webapps/blog-ssh/WEB-INF/lib/struts2-spring-plugin-2.1.6.jar!/struts-plugin.xml:29:132
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:360)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:403)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:190)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3838)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4488)
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:526)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
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:593)
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:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: Unable to load bean: type:com.opensymphony.xwork2.ObjectFactory class:org.apache.struts2.spring.StrutsSpringObjectFactory - bean - jar:file:/C:/tomcat6/webapps/blog-ssh/WEB-INF/lib/struts2-spring-plugin-2.1.6.jar!/struts-plugin.xml:29:132
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:222)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:165)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
... 30 more
Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name spring has already been loaded by bean - jar:file:/C:/tomcat6/lib/struts2-spring-plugin-2.1.6.jar!/struts-plugin.xml:29:132 - bean - jar:file:/C:/tomcat6/webapps/blog-ssh/WEB-INF/lib/struts2-spring-plugin-2.1.6.jar!/struts-plugin.xml:29:132
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:206)
... 33 more
...全文
340 41 打赏 收藏 转发到动态 举报
写回复
用AI写文章
41 条回复
切换为时间正序
请发表友善的回复…
发表回复
pspddd 2010-04-25
  • 打赏
  • 举报
回复
是不是,有什么jar文件冲突啊??
pspddd 2010-04-25
  • 打赏
  • 举报
回复
不行啊,还是报这个错,问一下,这一般都是什么错啊?
injuer 2010-04-25
  • 打赏
  • 举报
回复

<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
<init-param>
<param-name>config</param-name>
<param-value>
struts-default.xml,struts-plugin.xml,struts.xml
</param-value>
</init-param>
</filter>


你这样加下看看行不...
pspddd 2010-04-25
  • 打赏
  • 举报
回复
没有空格啊,安装的目录就是C:\tomcat6
pspddd 2010-04-25
  • 打赏
  • 举报
回复
郁闷了!我看看不用缓存了,有点迷糊了,谢谢大家的帮助!!
naruto__ 2010-04-25
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 pspddd 的回复:]
是不是,有什么jar文件冲突啊??
[/Quote]

把你的包弄出来
MeteorFalling 2010-04-25
  • 打赏
  • 举报
回复
没法回答问题,帮顶一下。我今天也一整天碰到一些变态问题,郁闷死了都。。
injuer 2010-04-25
  • 打赏
  • 举报
回复
timeToLiveSeconds设为12000
pspddd 2010-04-25
  • 打赏
  • 举报
回复
每次运行都说
38235 [http-8088-1] WARN org.hibernate.cache.ReadWriteCache - An item was expired by the cache while it was locked (increase your cache timeout)
在哪看缓存的超时时间啊?(郁闷了)
pspddd 2010-04-25
  • 打赏
  • 举报
回复
这是ehcache.xml代码

<?xml version="1.0" encoding="UTF-8"?>
<ehcache>
<diskStore path="java.io.tmpdir" />
<defaultCache maxElementsInMemory="1000" eternal="false"
overflowToDisk="false" timeToIdleSeconds="120" timeToLiveSeconds="120" />

<cache name="model.Blog" maxElementsInMemory="5" eternal="false"
overflowToDisk="true" timeToIdleSeconds="120" timeToLiveSeconds="120" />
</ehcache>
pspddd 2010-04-25
  • 打赏
  • 举报
回复
但是我用的是ehcache设置的,在ehcache.xml中配置的一些设置
injuer 2010-04-25
  • 打赏
  • 举报
回复
@CACHE有很多个参数的,你具体自己试下....
injuer 2010-04-25
  • 打赏
  • 举报
回复
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
这句应出现问题,你应该告诉CACHE保存的时间是多少....不然容易超时....
pspddd 2010-04-25
  • 打赏
  • 举报
回复
这是blog类

import static javax.persistence.GenerationType.IDENTITY;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

@Entity
@Table(name = "blog")
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
public class Blog implements java.io.Serializable {

private static final long serialVersionUID = -413395414698213950L;
private Integer id;
private String name;
private String description;

public Blog() {
}

@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "id", unique = true, nullable = false)
public Integer getId() {
return this.id;
}

public void setId(Integer id) {
this.id = id;
}

@Column(name = "name", length = 40)
public String getName() {
return this.name;
}

public void setName(String name) {
this.name = name;
}

@Column(name = "description", length = 200)
public String getDescription() {
return this.description;
}

public void setDescription(String description) {
this.description = description;
}
zhanlang9075 2010-04-25
  • 打赏
  • 举报
回复
学习下 顺便祝楼主好运


injuer 2010-04-25
  • 打赏
  • 举报
回复
还有Blog对象的HIBERNATE.cft.xml配置也贴下..
injuer 2010-04-25
  • 打赏
  • 举报
回复
Blog这个类的代码贴下...
pspddd 2010-04-25
  • 打赏
  • 举报
回复
感谢大家帮助!我解决了,情况是这样的我把struts2-spring-plugin-2.1.8.1.jar文件放在了tomcat的lib文件夹下,可能是跟其他jar文件冲突,我又把struts2-spring-plugin-2.1.8.1.jar文件放在了其他文件夹下,这回部署,启动tomcat,哈哈~~成功!!

但是又遇到了这个问题,大家帮我看看!!谢谢了!!
就是我能查找记录,但是不能更新记录!说是缓存问题!

以下是抛出的违例:

java.lang.reflect.InvocationTargetException
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:130)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:165)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:179)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)


在MyEclipse终端上显示的是:

38235 [http-8088-1] WARN org.hibernate.cache.ReadWriteCache - An item was expired by the cache while it was locked (increase your cache timeout): model.Blog#1 //Blog是我的持久类
injuer 2010-04-25
  • 打赏
  • 举报
回复

添加:
commons-fileupload-1.2.1.jar commons-io-1.3.2.jar

  猫猫在工程里确实没有发现这两个包,因为struts2的默认拦截器栈有文件上传的拦截器,于是这两个包就成了必须包.于是猫猫加入了:commons-io-1.3.2.jar、commons-fileupload-1.2.1.jar.异常没有解决.其实仔细观察这个异常信息,就已经指明了异常出现的问题:

Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - jar:file:/D:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/webapps/BookStore/WEB-INF/lib/struts2-core-2.0.12.jar!/struts-default.xml:30:72 - bean - jar:file:/D:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/webapps/BookStore/WEB-INF/lib/struts2-core-2.1.6.jar!/struts-default.xml:29:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register

  根据这句,猫猫发现,之前替换掉的struts和xwork的包没有删掉,还留在lib目录下.删除后,工程部署,运行成功!
injuer 2010-04-25
  • 打赏
  • 举报
回复
你这个问题是已经加载了一次了....

MAP中已经有了这个JAR下的CLASS,但后面又加载了一次,无法覆盖前面的CLASS,你只有等遇到过这样问题的人来帮你解决了...
加载更多回复(21)

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧