Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在WSO2应用服务器的WAR中使用EclipseLink JPA_Java_Jpa_Wso2_Eclipselink_Wso2as - Fatal编程技术网

Java 在WSO2应用服务器的WAR中使用EclipseLink JPA

Java 在WSO2应用服务器的WAR中使用EclipseLink JPA,java,jpa,wso2,eclipselink,wso2as,Java,Jpa,Wso2,Eclipselink,Wso2as,我有一个现有的WAR,包含JAX-WS服务,使用EclipseLink JPA与Oracle数据库连接。我想在WSO2应用服务器上部署它 由于WSO2AS随Hibernate一起提供,因此使其工作的方法似乎是在战争中包括必要的EclipseLink罐子。 我在WEB-INF/lib中包含了这些JAR: org.eclipse.persistence.antlr-2.5.2.jar org.eclipse.persistence.asm-2.5.2.jar org.eclipse.persist

我有一个现有的WAR,包含JAX-WS服务,使用EclipseLink JPA与Oracle数据库连接。我想在WSO2应用服务器上部署它

由于WSO2AS随Hibernate一起提供,因此使其工作的方法似乎是在战争中包括必要的EclipseLink罐子。 我在WEB-INF/lib中包含了这些JAR:

  • org.eclipse.persistence.antlr-2.5.2.jar
  • org.eclipse.persistence.asm-2.5.2.jar
  • org.eclipse.persistence.core-2.5.2.jar
  • org.eclipse.persistence.jpa.jpql-2.5.2.jar
  • org.eclipse.persistence.jpa-2.5.2.jar
  • org.eclipse.persistence.oracle-2.5.2.jar
当我通过将war复制到wso2as-5.3.0/repository/deployment/server/webapps来部署war时,会收到以下错误消息:

[2016-09-30 12:09:46,761] ERROR {org.apache.tomee.catalina.TomcatWebAppBuilder} -  Unable to deploy collapsed ear in war StandardEngine[Catalina].StandardHost[localhost].StandardContext[/hello]
org.apache.openejb.OpenEJBException: Creating application failed: /home/koert/software/wso2as-5.3.0/repository/deployment/server/webapps/hello: org.apache.openejb.OpenEJBRuntimeException: javax.persistence.PersistenceException: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [pasPU] failed.
Internal Exception: java.lang.NoClassDefFoundError: org/eclipse/persistence/platform/server/JMXServerPlatformBase: javax.persistence.PersistenceException: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [pasPU] failed.
Internal Exception: java.lang.NoClassDefFoundError: org/eclipse/persistence/platform/server/JMXServerPlatformBase
    at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:970)
    at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:652)
...
JMXServerPlatformBase类包含在org.eclipse.persistence.core-2.5.2.jar中,因此这看起来像是类加载问题

我试着把EclipseLink罐子放进去: -lib/runtimes/ext -存储库/组件/库

在那之后,我仍然得到同样的例外

我在META-INF中有一个webapp-classloading.xml,环境中有Javaee


如何让EclipseLink在WSO2AS中工作?

这些EclipseLink罐子是OSGi捆绑包吗?据我所知,WSO2服务器是OSGi服务器。不,我使用的EclipseLink罐子看起来像普通的罐子。我从Maven仓库抓到的那些是EclipseLink罐子还是OSGi包?据我所知,WSO2服务器是OSGi服务器。不,我使用的EclipseLink罐子看起来像普通的罐子。我从Maven存储库中抓到了它们