Weblogic 10.3.4上的爆炸EAR部署失败

时间:2013-09-01 09:25:23

标签: java-ee deployment weblogic weblogic-10.x

我一直在尝试通过管理控制台在Weblogic上部署/启动我的爆炸式EAR,但它失败并出现此错误:

BEA-149004> <Failures were detected while initiating start task for application 'xyz'.> 
####<Sep 1, 2013 4:10:51 AM CDT> <Warning> <Deployer>  <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1378026651456> <BEA-149078> <Stack trace for message 149004
weblogic.application.ModuleException: 
    at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1510)
    at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate    
...
        at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    Caused By: java.lang.NoSuchMethodError: javax.persistence.spi.PersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode;
        at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:626)
        at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:73)
        at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:225)
        at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:308)
 ....
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)

我无法通过这些日志找出问题的原因。

爆炸的EAR具有以下文件夹结构: 1)lib目录 - 由jar组成 2)META-INF目录 - 由application.xml,weblogic-application.xml组成 3)war目录 - 有jsps,WEB-INF文件夹(有weblogic.xml)

如果您需要更多详细信息,请与我们联系。请帮忙!

1 个答案:

答案 0 :(得分:0)

我设法自己解决了这个问题。以下是详细信息,如果有人有兴趣:

我修改了weblogic-application.xml(在我的应用程序EAR&gt; META-INF文件夹下),以包含org.hibernate。*和javax.persistence。* packages。重新启动服务器并重新部署EAR(爆炸)。我再也看不到错误,部署也很成功。

 .....
<prefer-application-packages>
     ......
            <package-name>org.hibernate.*</package-name>
            <package-name>javax.persistence.*</package-name>
        </prefer-application-packages>

    .......