seam中使用多数据源
现在项目组使用seam技术,我在开发multiple 数据源问题,
1 components.xml 配置
<?xml version="1.0" encoding="UTF-8"?><components xmlns="http://jboss.com/products/seam/components"xmlns:core="http://jboss.com/products/seam/core"xmlns:persistence="http://jboss.com/products/seam/persistence"xmlns:transaction="http://jboss.com/products/seam/transaction"xmlns:security="http://jboss.com/products/seam/security"xmlns:bpm="http://jboss.com/products/seam/bpm"xmlns:web="http://jboss.com/products/seam/web"xmlns:spring="http://jboss.com/products/seam/spring"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:mail="http://jboss.com/products/seam/mail" xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com/products/seam/core-2.1.xsd http://jboss.com/products/seam/persistence http://jboss.com/products/seam/persistence-2.1.xsd http://jboss.com/products/seam/transaction http://jboss.com/products/seam/transaction-2.1.xsd http://jboss.com/products/seam/bpm http://jboss.com/products/seam/bpm-2.1.xsd http://jboss.com/products/seam/spring http://jboss.com/products/seam/spring-2.1.xsd http://jboss.com/products/seam/security http://jboss.com/products/seam/security-2.1.xsd http://jboss.com/products/seam/components http://jboss.com/products/seam/components-2.1.xsd"><core:init debug="false" /><web:context-filter url-pattern="/dwr/*"/><spring:context-loader config-locations="classpath*:META-INF/**/spring/*-context.xml"/><core:manager conversation-timeout="120000"concurrent-request-timeout="500" conversation-id-parameter="cid" /><transaction:entity-transaction entity-manager="#{em}" /><persistence:entity-manager-factory name="wfwcoredatasource" /><persistence:managed-persistence-context name="em"auto-create="true" entity-manager-factory="#{wfwcoredatasource}" /><transaction:entity-transaction name="tt2" entity-manager="#{em2}" /><persistence:entity-manager-factory name="wfwcoredatasource2" /><persistence:managed-persistence-context name="em2"auto-create="true" entity-manager-factory="#{wfwcoredatasource2}" /><component name="org.jboss.seam.navigation.pages"><property name="resources"><value>/WEB-INF/pages.xml</value><value>META-INF/wfwdemo/wfwdemo_pages.xml</value><value>META-INF/wfwcore/wfwcore_pages.xml</value><value>META-INF/wfwapp1/wfwapp1_pages.xml</value></property></component><!-- <web:logging-filter url-pattern="*.seam" /><security:identityauthenticate-method="#{authenticator.authenticate}" /> --><bpm:jbpm /><!-- customization --><component name="com.talgroup.sandbox.seam.configuration"><property name="loginPage">/pages/wfwcore/login1.xhtml</property><property name="mainPage">/pages/wfwdemo/mainpage.xhtml</property></component> <component name="skinBean" scope="session" port="25" username="acen.chen@freeborders.com" password="19850802"/></components>
?蓝色字体就是配置数据源的位置
2 配饰persistence.xml
<?xml version="1.0" encoding="UTF-8"?><persistence 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"version="1.0"><persistence-unit name="wfwcoredatasource"transaction-type="RESOURCE_LOCAL"><provider>org.hibernate.ejb.HibernatePersistence</provider><jta-data-source>java:comp/env/jdbc/wfwdemo1_ds</jta-data-source><class>com.talgroup.wfw.wfwcore.app.domain.User</class><class>com.talgroup.wfw.wfwcore.app.domain.Configuration</class><class>com.talgroup.wfw.wfwcore.app.domain.Profile</class><class>com.talgroup.wfw.wfwcore.app.domain.Function</class><class>com.talgroup.wfw.wfwcore.app.domain.Role</class><class>com.talgroup.wfw.wfwcore.app.domain.Group</class><class>com.talgroup.wfw.wfwcore.app.domain.UserGroup</class><class>com.talgroup.wfw.wfwcore.app.domain.RoleGroup</class><class>com.talgroup.wfw.wfwcore.app.domain.UserLockInfo</class><class>com.talgroup.wfw.wfwcore.app.domain.ADServerInfo</class><class>com.talgroup.wfw.wfwcore.app.domain.ConfigParameter</class><class>com.talgroup.wfw.wfwcore.app.domain.LoginUserInfo</class><class>com.talgroup.wfw.wfwdemo.jpa.Hotel</class><class>com.talgroup.wfw.wfwdemo.persistent.Tag</class><properties><!-- <property name="hibernate.hbm2ddl.auto" value="create-drop" /> --><property name="hibernate.show_sql" value="true" /><property name="hibernate.dialect"value="com.talgroup.wfw.wfwcore.app.services.persistentService.DB2Dialect" /><property name="hibernate.cache.provider_class"value="org.hibernate.cache.HashtableCacheProvider" /><property name="hibernate.cache.provider_class"value="org.hibernate.cache.HashtableCacheProvider" /><!-- RESOURCE_LOCAL<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>--><!-- alternative<property name="jboss.entity.manager.factory.jndi.name" value="java:/jpaBookingEntityManagerFactory"/>--></properties></persistence-unit><persistence-unit name="wfwcoredatasource2"transaction-type="RESOURCE_LOCAL"><provider>org.hibernate.ejb.HibernatePersistence</provider><jta-data-source>java:comp/env/jdbc/wfwdemo2_ds</jta-data-source><class>com.talgroup.wfw.wfwcore.app.domain.User</class><class>com.talgroup.wfw.wfwcore.app.domain.Configuration</class><class>com.talgroup.wfw.wfwcore.app.domain.Profile</class><class>com.talgroup.wfw.wfwcore.app.domain.Function</class><class>com.talgroup.wfw.wfwcore.app.domain.Role</class><class>com.talgroup.wfw.wfwcore.app.domain.Group</class><class>com.talgroup.wfw.wfwcore.app.domain.UserGroup</class><class>com.talgroup.wfw.wfwcore.app.domain.RoleGroup</class><class>com.talgroup.wfw.wfwcore.app.domain.UserLockInfo</class><class>com.talgroup.wfw.wfwcore.app.domain.ADServerInfo</class><class>com.talgroup.wfw.wfwcore.app.domain.ConfigParameter</class><class>com.talgroup.wfw.wfwcore.app.domain.LoginUserInfo</class><class>com.talgroup.wfw.wfwdemo.jpa.Hotel</class><class>com.talgroup.wfw.wfwdemo.persistent.Tag</class><class>com.talgroup.wfw.wfwdemo.jpa.Hotel</class><class>com.talgroup.wfw.wfwdemo.jpa.Booking</class><class>com.talgroup.wfw.wfwdemo.jpa.Publisher</class><class>com.talgroup.wfw.wfwdemo.jpa.PubInfo</class><class>com.talgroup.wfw.wfwdemo.jpa.Author</class><class>com.talgroup.wfw.wfwdemo.jpa.Title</class><class>com.talgroup.wfw.wfwdemo.jpa.Book</class><class>com.talgroup.wfw.wfwdemo.jpa.SimpleObject</class><properties><!-- <property name="hibernate.hbm2ddl.auto" value="update" />--><property name="hibernate.show_sql" value="true" /><property name="hibernate.dialect"value="com.talgroup.wfw.wfwcore.app.services.persistentService.DB2Dialect" /><property name="hibernate.cache.provider_class"value="org.hibernate.cache.HashtableCacheProvider" /><property name="hibernate.cache.provider_class"value="org.hibernate.cache.HashtableCacheProvider" /><!-- RESOURCE_LOCAL<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>--><!-- alternative<property name="jboss.entity.manager.factory.jndi.name" value="java:/jpaBookingEntityManagerFactory"/>--></properties></persistence-unit></persistence>
?