Java JPA多实体管理工厂

Java JPA多实体管理工厂,java,spring,hibernate,jpa,Java,Spring,Hibernate,Jpa,我一直在从事的当前项目包含许多我无法访问的独立模块。 任务是在我的模块中使用JPA,并将其设置为自己的EntityManagerFactory。在applicationContext.xml中定义第二个EntityManagerFactory bean会在模块中导致错误,我无法访问该模块(管理模块) 错误的性质-Spring无法理解在管理模块中使用哪个bean,我无法通过以下方式解决: @PersistenceContext( name = "adminDataSource" ) private

我一直在从事的当前项目包含许多我无法访问的独立模块。 任务是在我的模块中使用JPA,并将其设置为自己的EntityManagerFactory。在applicationContext.xml中定义第二个EntityManagerFactory bean会在模块中导致错误,我无法访问该模块(管理模块)

错误的性质-Spring无法理解在管理模块中使用哪个bean,我无法通过以下方式解决:

@PersistenceContext( name = "adminDataSource" )
private EntityManager  entityManager;
没有访问它的源代码

有什么建议吗

编辑:

同时,这里是显示问题的应用程序上下文文件的一部分。 所以,若在下面取消注释bean,Spring将在我无权访问的其他模块中抛出异常

<!--bean   
        class = "org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"
        id = "slotsEntityManagerFactory" >
    <property 
                name="persistenceUnitName" 
                value="spinPersistence"/>
    <property 
                name="dataSource" ref="slotsDataSource"/>
    <property 
                name="packagesToScan" 
                value="com.win.server.protocol.http.spin" />
</bean -->

<bean id="entityManagerFactory"    class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
     <property 
                name="persistenceUnitName" 
                value=""/>
     <property 
                name="packagesToScan" 
                value="com.win.slots" />

    <property name="dataSource" ref="adminDataSource" />
    <property name="jpaVendorAdapter">
        <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
            <property name="database" value="POSTGRESQL"/> <!-- HSQL --> 
            <property name="showSql" value="false"/> 
            <property name="generateDdl" value="false"/> 
        </bean>
    </property>
</bean>


您是否尝试过从spring应用程序上下文@Autowired entitymanager?基本上,应用程序上下文必须连接到实体工厂,这就是问题所在。所以,当我将第二个EntityManagerFactorybean添加到应用程序上下文中时,spring在我无权访问的模块中给了我错误,因为它无法选择使用哪个bean。