[英]I can't start jboss with a JPA provider
我正在從WAS8.5.5遷移到JBoss EAP6.4。
我收到一條錯誤消息
12:03:14,362 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.deployment.unit."en_uitemplate.ear".
FIRST_MODULE_USE: org.jboss.msc.service.StartException in service jboss.deployment.unit."en_uitemplate.ear".FIRST_MODULE_USE: JBAS018733: Failed to pr
ocess phase FIRST_MODULE_USE of deployment "en_uitemplate.ear"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:166) [jboss-as-server-7.5.0.Final-redhat-21.jar:7.
5.0.Final-redhat-21]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Fina
l-redhat-1]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-
1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.8.0_101]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.8.0_101]
at java.lang.Thread.run(Unknown Source) [rt.jar:1.8.0_101]
Caused by: javax.persistence.PersistenceException: JBAS011466: PersistenceProvider '
org.apache.openjpa.persistence.PersistenceProviderImpl
' not found
at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.lookupProvider(PersistenceUnitServiceHandler.java:619)
at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.deployPersistenceUnit(PersistenceUnitServiceHandler.java:317)
at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.addPuService(PersistenceUnitServiceHandler.java:279)
at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.handleEarDeployment(PersistenceUnitServiceHandler.java:216)
at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.deploy(PersistenceUnitServiceHandler.java:118)
at org.jboss.as.jpa.processor.PersistenceBeginInstallProcessor.deploy(PersistenceBeginInstallProcessor.java:48)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:159) [jboss-as-server-7.5.0.Final-redhat-21.jar:7.
5.0.Final-redhat-21]
我創建目錄為
C:\\ Applications \\ jboss64 \\ jboss-eap-6.4 \\ modules \\ system \\ layers \\ base \\ org \\ apache \\ openjpa \\ main
我將openjpa-2.4.1.jar和serp-1.13.1.jar與module.xml一起放入了其中。
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="org.apache.openjpa">
<resources>
<resource-root path="openjpa-2.4.1.jar"/>
<resource-root path="serp-1.13.1.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
<module name="javax.persistence.api"/>
<module name="javax.transaction.api"/>
<module name="javax.validation.api"/>
<module name="org.apache.commons.lang"/>
<module name="org.apache.commons.collections"/>
<module name="org.apache.log4j"/>
</dependencies>
我有我的persistence.xml作為
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="csxstartershowcaseEJB" transaction-type="JTA">
<provider>
org.apache.openjpa.persistence.PersistenceProviderImpl
</provider>
<properties>
<property name="jboss.as.jpa.providerModule" value="org.apache.openjpa" />
<property name="openjpa.Log" value="DefaultLevel=TRACE, Runtime=TRACE, Tool=TRACE"/>
<property name="openjpa.RuntimeUnenhancedClasses" value="supported" />
<property name="openjpa.ConnectionDriverName" value="org.apache.derby.jdbc.EmbeddedDriver"/>
<property name="openjpa.jdbc.Schema" value="APP" />
<property name="javax.persistence.jdbc.url" value="jdbc:derby:CSXSampleDatabase;create=true"/>
<property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema(ForeignKeys=true)"/>
<property name="openjpa.MetaDataFactory" value="jpa"/>
</properties>
</persistence-unit>
根據帖子https://developer.jboss.org/thread/222893 ,我還將以下依賴項添加到了EJB和EJBClient項目的pom.xml中。 但我仍然遇到相同的錯誤。
<!-- JPA -->
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-ee</artifactId>
<version>7.5.0.Final-redhat-21</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-ejb3</artifactId>
<version>7.1.1.Final</version>
<scope>provided</scope>
</dependency>
這與消息“找不到org.apache.openjpa.persistence.PersistenceProviderImpl”有關。 有什么建議嗎?
EAP不支持openJPA。 https://developer.jboss.org/message/964869#964869
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.