2012-04-07 54 views
2

我是新来JBOSS和M在JBOSS 7.1.1JBOSS 7.1.1 javax.persistence.PersistenceException PersistenceProvider类在“org.apache.openjpa.persistence.PersistenceProviderImpl找不到

我被困在应用程序的基本部署创建了persistent.xml web应用程序为

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="1.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_1_0.xsd"> 
    <persistence-unit name="mydummy-jpa" transaction-type="RESOURCE_LOCAL"> 
     <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider> 
     <jta-data-source>java:jboss/datasources/mydummyexample</jta-data-source> 
     <class>com.nsn.caobusiness.selfcare.entity.DummyTable</class> 
     <properties> 
      <property name="jboss.as.jpa.providerModule" value="org.jboss.as.jpa.openjpa" /> 
      <property name="openjpa.Log" value="DefaultLevel=WARN,SQL=TRACE" /> 
      <property name="openjpa.jdbc.DBDictionary" value="mysql(UseClobs=true)"/>   
     </properties> 
    </persistence-unit> 
</persistence> 


数据源在我standalone.xml样子:

<datasource jndi-name="java:jboss/datasources/mydummyexample" pool-name="mydummyexample" enabled="true" use-java-context="true" use-ccm="true" jta="true"> 
        <connection-url>jdbc:mysql://localhost:3306/worldonstreet</connection-url> 
        <driver>mysql</driver> 
        <security> 
         <user-name>root</user-name> 
         <password></password> 
        </security> 
        <statement> 
         <prepared-statement-cache-size>100</prepared-statement-cache-size> 
         <share-prepared-statements/> 
        </statement> 
       </datasource> 


当我部署该应用程序,我得到以下例外:

23:48:06656 INFO [org.jboss.as.jpa](MSC服务线程1-5)JBAS011401:阅读persistence.xml为mydummy-jpa 23:48:08,000错误[org.jboss.msc.service.fail](MSC服务线程1-1)MSC00001:无法启动服务jboss.deployment.unit。“SpringDatabaseTransaction.war “.INSTALL:服务jboss.deployment.unit中的org.jboss.msc.service.StartException。”SpringDatabaseTransaction.war“.INSTALL:未能处理阶段INSTALL部署”SpringDatabaseTransaction.war“ 在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_26] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:908)[rt.jar:1.6.0_26] at java.lang.Thread.run(Thread.java:662)[rt .jar:1.6.0_26] 原因:javax.persistence.PersistenceException:JBAS011466: PersistenceProvider类 'org.apache.openjpa.persistence.PersistenceProviderImpl' 未找到

at org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.lookupProvider(PersistenceUnitDeploymentProcessor.java:555) 
at org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.deployPersistenceUnit(PersistenceUnitDeploymentProcessor.java:295) 
at org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.addPuService(PersistenceUnitDeploymentProcessor.java:258) 
at org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.handleWarDeployment(PersistenceUnitDeploymentProcessor.java:194) 
at org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.deploy(PersistenceUnitDeploymentProcessor.java:118) 
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] 

我从整天停留在此。希望得到这个论坛的任何帮助。

问候, 莱格拉斯

+4

ahh是的,是的,春季配置调试的乐趣...对我来说很好,在我的国家买枪比较困难,否则我可能会在我上次不得不面对这个废话从地狱的坑出生 – lurscher 2012-04-07 20:12:52

+0

相信我..它也越来越令我沮丧:(你需要更多的信息从我身边? – Legolas 2012-04-07 20:16:39

+1

我从我的经验中得知,没有文档的情况下设置spring配置几乎是不可能的,因为诊断消息毫无用处......另外,可能你已经做到了,但是你是否检查过'org.apache.openjpa。 persistence.PersistenceProviderImpl'类存在于你的openjpa jar库中吗? – lurscher 2012-04-07 20:20:56

回答

4

我下载Apache Openjpa,提取罐,在\ JBOSS_HOME>创建JBoss中模块\模块\组织\阿帕奇\ OpenJPA中,改变了我的persistent.xml财产

<property name="jboss.as.jpa.providerModule" value="org.apache.openjpa" /> 

module.xml样子:

<module xmlns="urn:jboss:module:1.1" name="org.apache.openjpa"> 
    <resources> 
     <resource-root path="openjpa-2.2.0.jar"/> 
     <resource-root path="serp-1.13.1.jar"/> 
    </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> 
</module> 

它终于奏效。 :) 感谢@lurscher您的评论。它激励我继续前进。

相关问题