我有一个包含JAX-WS服务的现有WAR,使用EclipseLink JPA连接Oracle数据库。我想在WSO2应用服务器上部署它。
由于WSO2AS带有Hibernate,因此让它工作的方法似乎是在WAR中包含必要的EclipseLink jar。 我在WEB-INF / lib中包含了这些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 jar放入: - lib / runtimes / ext - repository / components / lib
之后,我仍然得到同样的例外。
我在META-INF中有一个webapp-classloading.xml,在环境中有Javaee。
如何让EclipseLink在WSO2AS中运行?