`
shicheng
  • 浏览: 162172 次
  • 性别: Icon_minigender_1
  • 来自: 泉州
社区版块
存档分类
最新评论

websphere上使用c3p0报错解决

阅读更多

之前在自己的机器上部署WebSphere没有什么问题,这回要在测试环境中部署,确报了以下错误:


异常一:

2009-11-13 21:44:26,156 [WebContainer : 510] WARN [com.mchange.v2.c3p0.management.ActiveManagementCoordinator] - Failed to set up C3P0RegistryManager mBean. [c3p0 will still function normally, but management via JMX may not be possible.] javax.management.InstanceAlreadyExistsException: com.mchange.v2.c3p0:cell=lits-vd2is0s2f1Node01Cell,type=C3P0Registry,node=lits-vd2is0s2f1Node01,process=server1 at com.sun.jmx.mbeanserver.RepositorySupport.addMBean(RepositorySupport.java:470) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1428) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:954) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:355) at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:515) at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:469) at com.mchange.v2.c3p0.management.ActiveManagementCoordinator.attemptManageC3P0Registry(ActiveManagementCoordinator.java:64) at com.mchange.v2.c3p0.C3P0Registry.attemptRegisterRegistryMBean(C3P0Registry.java:217) at com.mchange.v2.c3p0.C3P0Registry.reregister(C3P0Registry.java:242)


异常二:

aused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in ServletContext resource [/WEB-INF/classes/common.spring.xml]:


Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException:


Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/classes/common.spring.xml]: Invocation of init method failed; nested exception is java.lang.VerifyError:


class loading constraint violated (class: com/mchange/v2/c3p0/impl/NewProxyDatabaseMetaData method: attach(Lcom/mchange/v2/c3p0/impl/NewPooledConnection;)V) at pc: 0 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:275) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) at java.security.AccessController.doPrivileged(AccessController.java:214) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269) ... 111 more Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource


[/WEB-INF/classes/common.spring.xml]: Invocation of init method failed; nested exception is java.lang.VerifyError: class loading constraint violated (class: com/mchange/v2/c3p0/impl/NewProxyDatabaseMetaData method: attach(Lcom/mchange/v2/c3p0/impl/NewPooledConnection;)V) at pc: 0 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) at java.security.AccessController.doPrivileged(AccessController.java:214) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269) ... 124 more Caused by: java.lang.VerifyError: class loading constraint violated (class: com/mchange/v2/c3p0/impl/NewProxyDatabaseMetaData method: attach(Lcom/mchange/v2/c3p0/impl/NewPooledConnection;)V) at pc: 0 at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:59) at java.lang.J9VMInternals.initialize(J9VMInternals.java:120) at com.mchange.v2.c3p0.impl.NewProxyConnection.getMetaData(NewProxyConnection.java:675) at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:113) at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119) at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339) at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867) at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:814) at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:732) at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335) ... 134 more


刚开始的时候,一直在找异常二的错误,找了网上的一些资料,说是包冲突,但是试了统一了几个包还是不管用。今天我又重新重头看了一下异常信息,发现了第一条信息,突然想起,在配置WebSphere的时候,有一个选项:

“ 为资源创建 MBean ”,今天就把我本机上的这个选项给去掉,还真报了和测试环境上的一样,在选回去就又可以了。呵呵,好高兴,终于找到问题的所在,周一去了,试一下!

------------------------------------

试了一下,不是这个问题,测试环境上的已经选中了那个选项!

于是,我就先把c3p0去掉,这样就不在报上面的错误,终于可以访问了,但是新的问题又出现了,报:

There is no Action mapped for namespace /zhsz and action name users. - [unknown location]
	at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:177)
	at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
	at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:47)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:458)
	at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
	at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
	at cdb.hq.litsoft.gwc.filter.AuthorityFilter.doFilter(AuthorityFilter.java:30)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:696)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:641)
	at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:613)
	at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:145)
	at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:580)
	at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:111)
	at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3107)
	at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
	at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
	at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1425)
	at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:92)
	at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465)
	at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394)
	at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
	at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152)
	at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213)
	at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195)
	at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
	at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:193)
	at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:725)
	at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:847)
	at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1498)
[11/16/09 14:02:50:406 PST] 00000041 ServletWrappe I   SRVE0242I: [gwyc_war] [/gwyc] [/common/404.jsp]: Initialization successful.
[11/16/09 14:02:50:453 PST] 00000041 WebApp        A   SRVE0180I: [gwyc_war#gwyc.war] [/gwyc] [Servlet.LOG]: Error page exception  The server cannot use the error page specified for your application because of the exception printed below.
[11/16/09 14:02:50:468 PST] 00000041 WebApp        A   SRVE0181I: [gwyc_war#gwyc.war] [/gwyc] [Servlet.LOG]: Error Page Exception: : com.ibm.websphere.servlet.error.ServletErrorReport: SRVE0190E: File not found: /zhsz/users!login.action
	at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:584)
	at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:111)
	at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3107)
	at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
	at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
	at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1425)
	at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:92)
	at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465)
	at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394)
	at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
	at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152)
	at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213)
	at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195)
	at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
	at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:193)
	at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:725)
	at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:847)
	at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1498)
Caused by: java.io.FileNotFoundException: /zhsz/users!login.action
	at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:355)
	... 17 more

 
找不到action,网上关于这个问题的解决是:
服务器>应用程序服务器>[选择所使用的服务器]>Web 容器设置>Web 容器>定制属性,增加名称为“com.ibm.ws.webcontainer.invokefilterscompatibility”的定制属性,值为true。

但是网上的多是因为WebSphere升级到6.1.0.17,我也设上试试,还是不行。

我就检查一下测试环境跟我本地有什么区别,发现原来是测试环境装的时候,选的是“应用服务环境”,而我本地是“Department manager”环境,所以就不行,目前正在寻找解决的方案,找到了,在回来补上!。。。。。。








 

分享到:
评论
3 楼 shicheng 2010-01-24  
应用程序目录---这个名字也明显的,一般情况下是不需要填写的
你在部署的时候,注意看一下,一个文本框,你输入一个部署路径就可以
我还尝试过,如果路径很长的话,也有问题
2 楼 zztu 2010-01-21  
请问具体是在哪个地方配置的,我也遇到同样的问题了,谢谢
1 楼 shicheng 2009-11-19  
终于将这个问题解决!!!
今天让一个同事帮忙搞了一下,结果就成功了!!
原来是在部署的时候,有一个填写"应用程序目录"的文本框,在这里填写一个路径就可以部署成功了.
我个人认为,之前的可能是没有找到我的struts配置文件引起的.

相关推荐

Global site tag (gtag.js) - Google Analytics