私は、親warファイルのWEB-INF/libフォルダにあるモジュールを持っています。このモジュールには、persistence.xmlと、起動時にJPAコンテナがロードされるときにロードする必要があるエンティティが含まれています。何とか私は戦争とlib jarの永続ユニットをマージする必要があります。私の戦争のpersistence.xmlはWEB-INF/classes/META-INFに存在します。したがってWEB-INF/classesを永続性ルートとみなし、lib jarからエンティティを理解できません。それは私が難しい方法を見つけました。MergingPersistenceUnitManagerを使用してエンティティを読み込みます
私はこの問題への解決策を示唆して複数の人
http://ancientprogramming.blogspot.com/2007/05/multiple-persistencexml-files-and.html を偶然見つけて、私はまた、エンティティのクラス定義をマージしますMergingPersistenceUnitManagerを持って春のData-JPAプロジェクトがあることが分かりました。
はここで仕事をdoesntの私の設定
<bean id="pum" class="org.springframework.data.jpa.support.MergingPersistenceUnitManager">
<property name="persistenceXmlLocations">
<list>
<value>classpath*:META-INF/persistence.xml</value>
</list>
</property>
<property name="defaultDataSource" ref="dataSource"></property>
</bean>
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="persistenceUnitName" value="LineManagement" />
<property name="persistenceUnitManager" ref="pum"></property>
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="generateDdl" value="false" />
<property name="showSql" value="false" />
<property name="databasePlatform" ref="cpsHibernateDialectClassName" />
</bean>
</property>
です。それは私にエラーを与える java.lang.NoSuchMethodError:org.springframework.data.jpa.support.MergingPersistenceUnitManager.getPersistenceUnitInfo(Ljava/lang/String;)Lorg/springframework/orm/jpa/persistenceunit/MutablePersistenceUnitInfo;
私はこのエラーをどのように私に与えるかわからない。私の理解から、MergingPersistenceUnitManagerはDefaultPersistenceManagerを拡張しています。私が疑うことは、紛争があるかもしれないということだけです。
ここに私の依存関係です。 spring-orm-3.0.2-RELEASE.jarおよびspring-data-jpa-1.0.3-RELEASE.jarがあります。
私は古代のプログラミングソリューションに戻ることができますが、それはちょうど箱の中で動くべきではありませんか?
優秀、ありがとうございます。私はこれを早めにチェックしていないとばかげている。 – Hrishikesh