我有一个现有的弹簧应用程序说 App1(未使用弹簧注释)。目前,我正在将其中的一些 bean 集成到另一个应用程序中,比如 App2,它使用 spring 注释进行配置。所以我被迫对新添加的 bean 使用“p”命名空间。但在那之后,集成的应用程序将无法工作。这是我在 App1 中的 bean 声明:
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="jpaVendorAdapter">
<bean
class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" />
</property>
<property name="persistenceXmlLocation" value="classpath*:META-INF/persistence.xml" />
<property name="persistenceUnitName" value="org.jbpm.runtime"></property>
这在引起问题的 App2 中是相同的:
<bean id="vendor"
class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"/>
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"
p:jpaVendorAdapter="vendor"
p:persistenceXmlLocation="classpath*:META-INF/persistence.xml"
p:persistenceUnitName="org.jbpm.runtime">
这个声明有什么问题吗?(两个应用程序都是spring 3.2)还是必须在注释驱动的配置中使用p命名空间。?