以下配置適用於WebLogic,但在OpenEJB中會引發錯誤「未找到javax.naming.NameNotFoundException:Name」AppDB「。OpenEJB不能使用javax.persistence.jtaDataSource
如果我刪除了屬性javax.persistence.jtaDataSource,它的工作原理。爲什麼設置2重複的數據源?因爲它是Eclipselinks的一個bug(見http://bugs.eclipse.org/246126)
<persistence-unit name="app1" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>AppDB</jta-data-source>
<properties>
<property name="javax.persistence.jtaDataSource" value="AppDB" />
</properties>
</persistence-unit>
以下是jndi.properties
java.naming.factory.initial=org.apache.openejb.client.LocalInitialContextFactory
openejb.validation.output.level=VERBOSE
openejb.nobanner=false
jdbc/AppDB = new://Resource?type=DataSource
jdbc/AppDB.provider = org.eclipse.persistence.jpa.PersistenceProvider
jdbc/AppDB.JdbcDriver = oracle.jdbc.OracleDriver
jdbc/AppDB.JdbcUrl = jdbc:oracle:thin:@xx.xx.xx.xx:xxxx:xxxx
jdbc/AppDB.JtaManaged = false
jdbc/AppDB.UserName = xxxx
jdbc/AppDB.Password = xxxx
,因爲這是其他球隊包裝罐,我無法改變的內容,但我還是想在我的OpenEJB中使用它,有什麼建議嗎?謝謝。
它的工作原理,我只是在jndi.properties中添加1行。謝謝!!! – Dennys