2012-02-28 2 views
0

Я использую Spring/JPA/Hibernate 3 в приложении, которое работает отлично в Tomcat 7, но не работает в JBoss AS 7. Я использую @PersistenceContext аннотация для ввода моего диспетчера сущностей в DAO, но я получаю «Сущность не отображается» Исключение при выполнении запроса. Я НЕ хочу, чтобы JBoss управлял моим контекстом персистентности, и я использую сканирование классов для построения моего LocalContainerEntityManagerFactoryBean. Я попытался отключить JPA модуль из standalone.xml JBoss и даже добавление JBoss-развертывания-structure.xml с этим содержанием:JBoss 7 throwing Entity не отображается при использовании @PersistenceContext

<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0"> 
    <deployment> 
     <exclusions> 
      <module name="org.hibernate"/> 
     </exclusions> 
    </deployment> 
</jboss-deployment-structure> 

Он по-прежнему не работает. В чем причина этого исключения? Почему JBoss все еще пытается управлять моим контекстом персистентности?

PS: По умолчанию я получаю странное определение PU (корень URL PU не моя война!)

(MSC service thread 1-3) insurance-module 17:51:41.456 [MSC service thread 1-3] DEBUG org.hibernate.ejb.Ejb3Configuration - Processing PersistenceUnitInfo [ 
17:51:41,456 INFO [stdout] (MSC service thread 1-3) name: default 
17:51:41,456 INFO [stdout] (MSC service thread 1-3) persistence provider classname: null 
17:51:41,456 INFO [stdout] (MSC service thread 1-3) classloader: ModuleClassLoader for Module "deployment.insurance-module-0.1-SNAPSHOT.war:main" from Service Module Loader 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Temporary classloader: org.spr[email protected]13acaabd 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) excludeUnlistedClasses: true 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) JTA datasource: null 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Non JTA datasource: com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, dataSourceName -> z8kfsx8l1ikdpo61c3bmxu|6b5638a, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> com.mysql.jdbc.Driver, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> z8kfsx8l1ikdpo61c3bmxu|6b5638a, idleConnectionTestPeriod -> 60, initialPoolSize -> 3, jdbcUrl -> jdbc:mysql://localhost:3306/insurance, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 60, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 5, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 1, numHelperThreads -> 3, numThreadsAwaitingCheckoutDefaultUser -> 0, preferredTestQuery -> select 1, properties -> {user=******, password=******}, propertyCycle -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false ] 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Transaction type: RESOURCE_LOCAL 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) PU root URL: file:/home/mircea/jboss-as-7.0.2.Final/modules/sun/jdk/main/service-loader-resources/ 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Shared Cache Mode: UNSPECIFIED 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Validation Mode: AUTO 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Jar files URLs [] 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Managed classes names [] 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Mapping files names [] 
17:51:41,457 INFO [stdout] (MSC service thread 1-3) Properties [] 
17:51:41,459 INFO [stdout] (MSC service thread 1-3) insurance-module 17:51:41.459 [MSC service thread 1-3] DEBUG org.hibernate.ejb.Ejb3Configuration - Detect class: true; detect hbm: true 
17:51:41,462 INFO [stdout] (MSC service thread 1-3) insurance-module 17:51:41.462 [MSC service thread 1-3] DEBUG o.h.ejb.packaging.AbstractJarVisitor - Searching mapped entities in jar/par: file:/home/mircea/jboss-as-7.0.2.Final/modules/sun/jdk/main/service-loader-resources/ 
+0

Показать нам некоторые файлы конфигурации и код? –

+0

, если я удалю свойство packageToScan из определения bean-компонента LocalContainerEntityManagerFactoryBean и использую параметр persistenceXmlLocation с значением = "classpath *: META-INF/jpa-persistence.xml" (и вручную добавляет к нему классы сущностей). Просто похоже, что функция «packagesToScan» не работает с JBoss7 (?!). @Sajan, что еще вам нужно (pom.xml, bean определения)? –

+0

** ANSWER: ** Похоже, что я stoopid: , если packageToScan не указывает на правильные пакеты, все отлично работает в Tomcat 7, но при развертывании в JBoss он не работает, как описано в вопросе. –

ответ

0

если packagesToScan не указывает на правильный пакеты все работает просто отлично в Tomcat 7, но при развертывании в JBoss он не работает, как описано в вопросе.

Смежные вопросы