Hibernate JBoss AS 7迁移-部署失败问题

Hibernate JBoss AS 7迁移-部署失败问题,hibernate,jboss,jboss7.x,Hibernate,Jboss,Jboss7.x,当我在JBossAS7中部署我的工作war文件时,我遇到了以下异常 11:59:11,090 WARN [org.jboss.as.server.deployment] (MSC service thread 1-6) JBAS015893: Encountered invalid class name 'com.sun.jersey.server.impl.model.parameter.multivalued.StringReaderProviders$StringConstructor'

当我在JBossAS7中部署我的工作war文件时,我遇到了以下异常

11:59:11,090 WARN [org.jboss.as.server.deployment] (MSC service thread 1-6) JBAS015893: Encountered invalid class name 'com.sun.jersey.server.impl.model.parameter.multivalued.StringReaderProviders$StringConstructor' for service type 'com.sun.jersey.spi.StringReaderProvider' 11:59:11,091 WARN [org.jboss.as.server.deployment] (MSC service thread 1-6) JBAS015893: Encountered invalid class name 'com.sun.jersey.server.impl.model.parameter.multivalued.StringReaderProviders$DateProvider' for service type 'com.sun.jersey.spi.StringReaderProvider' 11:59:11,092 WARN [org.jboss.as.server.deployment] (MSC service thread 1-6) JBAS015893: Encountered invalid class name 'com.sun.jersey.server.impl.model.parameter.multivalued.JAXBStringReaderProviders$RootElementProvider' for service type 'com.sun.jersey.spi.StringReaderProvider' 11:59:11,923 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-5) MSC00001: Failed to start service jboss.deployment.unit."myimpl.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."myimpl.war".POST_MODULE: Failed to process phase POST_MODULE of deployment "myimpl.war" at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_37] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_37] at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_37] Caused by: java.lang.NoClassDefFoundError: org/hibernate/exception/ConstraintViolationException at java.lang.Class.getDeclaredConstructors0(Native Method) [rt.jar:1.6.0_37] at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389) [rt.jar:1.6.0_37] at java.lang.Class.getConstructor0(Class.java:2699) [rt.jar:1.6.0_37] at java.lang.Class.getConstructor(Class.java:1657) [rt.jar:1.6.0_37] at org.jboss.as.web.deployment.jsf.JsfManagedBeanProcessor.deploy(JsfManagedBeanProcessor.java:108) at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] ... 5 more Caused by: java.lang.ClassNotFoundException: org.hibernate.exception.ConstraintViolationException from [Module "deployment.myimpl.war:main" from Service Module Loader] at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190) [jboss-modules.jar:1.1.1.GA] at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468) [jboss-modules.jar:1.1.1.GA] at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456) [jboss-modules.jar:1.1.1.GA] at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:423) [jboss-modules.jar:1.1.1.GA] at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398) [jboss-modules.jar:1.1.1.GA] at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120) [jboss-modules.jar:1.1.1.GA] ... 11 more 11:59:11,938 INFO [org.jboss.as] (MSC service thread 1-7) JBAS015951: Admin console listening on http://127.0.0.1:9990 11:59:11,938 ERROR [org.jboss.as] (MSC service thread 1-7) JBAS015875: JBoss AS 7.1.1.Final "Brontes" started (with errors) in 72380ms - Started 1402 of 1548 services (1 services failed or missing dependencies, 136 services are passive or on-demand) 11:59:11,939 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "myimpl.war" was rolled back with failure message {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"myimpl.war\".POST_MODULE" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"myimpl.war\".POST_MODULE: Failed to process phase POST_MODULE of deployment \"myimpl.war\""}} 11:59:12,036 INFO [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015877: Stopped deployment myimpl.war in 95ms 11:59:12,038 INFO [org.jboss.as.controller] (DeploymentScanner-threads - 2) JBAS014774: Service status report JBAS014777: Services which failed to start: service jboss.deployment.unit."myimpl.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."myimpl.war".POST_MODULE: Failed to process phase POST_MODULE of deployment "myimpl.war" 11:59:12,040 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"myimpl.war\".POST_MODULE" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"myimpl.war\".POST_MODULE: Failed to process phase POST_MODULE of deployment \"myimpl.war\""}}}} 11:59:11090警告[org.jboss.as.server.deployment](MSC服务线程1-6)JBAS015893:遇到服务类型“com.sun.jersey.spi.StringReaderProvider”的无效类名“com.sun.jersey.server.impl.model.parameter.multivalued.StringReaderProviders$StringConstructor” 11:59:11091警告[org.jboss.as.server.deployment](MSC服务线程1-6)JBAS015893:遇到服务类型“com.sun.jersey.spi.StringReaderProvider”的无效类名“com.sun.jersey.server.impl.model.parameter.multivalued.StringReaderProviders$DateProvider” 11:59:11092警告[org.jboss.as.server.deployment](MSC服务线程1-6)JBAS015893:遇到服务类型“com.sun.jersey.server.impl.model.parameter.multivalued.JAXBStringReaderProviders$RootElementProvider”的无效类名“com.sun.jersey.spi.StringReaderProvider” 11:59:11923错误[org.jboss.msc.service.fail](msc服务线程1-5)MSC00001:无法启动服务jboss.deployment.unit.“myimpl.war”。POST_模块:org.jboss.msc.service.StartException in service jboss.deployment.unit.“myimpl.war”。POST_模块:无法处理部署“myimpl.war”的阶段POST_模块 在org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119)[jboss-as-server-7.1.1.Final.jar:7.1.1.Final] 在org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)[jboss-msc-1.0.2.GA.jar:1.0.2.GA] 在org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)[jboss-msc-1.0.2.GA.jar:1.0.2.GA] 位于java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[rt.jar:1.6.037] 在java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[rt.jar:1.6.037] 在java.lang.Thread.run(Thread.java:662)[rt.jar:1.6.0_37] 原因:java.lang.NoClassDefFoundError:org/hibernate/exception/ConstraintViolationException 在java.lang.Class.getDeclaredConstructors0(本机方法)[rt.jar:1.6.0_37] 在java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)[rt.jar:1.6.037] 在java.lang.Class.getConstructor0(Class.java:2699)[rt.jar:1.6.0_37] 在java.lang.Class.getConstructor(Class.java:1657)[rt.jar:1.6.0_37] 位于org.jboss.as.web.deployment.jsf.JsfManagedBeanProcessor.deploy(JsfManagedBeanProcessor.java:108) 在org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113)[jboss-as-server-7.1.1.Final.jar:7.1.1.Final] ... 还有5个 原因:java.lang.ClassNotFoundException:org.hibernate.exception.ConstraintViolationException来自服务模块加载器的[Module“deployment.myimpl.war:main] 在org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)[jboss modules.jar:1.1.1.GA] 位于org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)[jboss modules.jar:1.1.1.GA] 位于org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)[jboss modules.jar:1.1.1.GA] 位于org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:423)[jboss modules.jar:1.1.1.GA] 位于org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)[jboss modules.jar:1.1.1.GA] 位于org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)[jboss modules.jar:1.1.1.GA] ... 还有11个 11:59:11938信息[org.jboss.as](MSC服务线程1-7)JBAS015951:正在侦听的管理控制台http://127.0.0.1:9990 11:59:11938错误[org.jboss.as](MSC服务线程1-7)JBAS015875:jboss as 7.1.1.Final“Brontes”在72380ms内启动(有错误)-启动1548个服务中的1402个(1个服务失败或缺少依赖项,136个服务为被动或按需) 11:59:11939信息[org.jboss.as.server](DeploymentScanner threads-2)JBAS015870:部署的部署“myimpl.war”被回滚,失败消息为{“JBAS014671:Failed services”=>{“jboss.deployment.unit.\“myimpl.war\”。发布模块“=>”org.jboss.msc.service.StartException in service in service jboss.deployment.unit.\“myimpl.war”\“.POST_模块:无法处理部署\“myimpl.war\”}的阶段POST_模块” 11:59:12036信息[org.jboss.as.server.deployment](MSC服务线程1-5)JBAS015877:在95毫秒内停止部署myimpl.war 11:59:12038信息[org.jboss.as.controller](DeploymentScanner线程-2)JBAS014774:服务状态报告 JBAS014777:未能启动的服务:服务jboss.deployment.unit。“myimpl.war”。POST_模块:服务jboss.deployment.unit。“myimpl.war”中的org.jboss.msc.service.StartException。POST_模块:未能处理部署“myimpl.war”的阶段POST_模块 11:59:12040错误[org.jboss.as.server.deployment.scanner](DeploymentScanner线程-1){“JBAS014653:复合操作失败并被回滚。失败的步骤:=>{“操作步骤-2”=>{“JBAS014671:失败的服务”=>{“jboss.deployment.unit.\“myimpl.war\”。POST\U模块“=>”org.jboss.msc.service.StartException位于服务jboss.deployment.unit.“myimpl.war\”中。POST\u模块:无法处理部署的阶段POST\u模块“myimpl.war\”} 我认为默认情况下JBoss AS7支持在启动时将hibernate jar添加到类路径中(因为JBoss AS7中已经提供了hibernate模块)。我在hibernate-core-4.0.1.Final.jar(在'modules\org\hibernate\main'文件夹结构下)下找到了ConstraintViolationException类.那么为什么会发生这种NoClassDefFoundError

请注意,我没有使用maven进行依赖项解析。对于依赖项解析,我手动将jar文件放入myimpl.war\WEB-INF\lib中

无论如何,我在WEB-INF\lib目录中添加了hibernate的jar(hibernate3.jar),之后出现了一些新的异常,wh 12:51:19,146 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC00001: Failed to start service jboss.deployment.unit."myimpl.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."myimpl.war".POST_MODULE: Failed to process phase POST_MODULE of deployment "myimpl.war" at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_37] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_37] at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_37] Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011232: Only one JAX-RS Application Class allowed. com.sun.jersey.api.core.WebAppResourceConfig com.sun.jersey.api.core.ResourceConfig com.sun.jersey.api.core.ClassNamesResourceConfig com.sun.jersey.api.core.ScanningResourceConfig com.sun.jersey.api.core.ClasspathResourceConfig com.sun.jersey.api.core.DefaultResourceConfig com.sun.jersey.api.core.PackagesResourceConfig com.sun.jersey.server.impl.application.DeferredResourceConfig com.sun.jersey.api.core.ApplicationAdapter at org.jboss.as.jaxrs.deployment.JaxrsScanningProcessor.scan(JaxrsScanningProcessor.java:209) at org.jboss.as.jaxrs.deployment.JaxrsScanningProcessor.deploy(JaxrsScanningProcessor.java:105) at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] ... 5 more


    <extension module="org.jboss.as.jaxrs"/>
    <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>