关于此任务
您需要先配置 JPA 捆绑软件并将数据源添加至 WebSphere® Application Server,才能访问另一个捆绑软件中的 JPA 持久性单元。例如,耗用 JPA 实体并显示和处理数据的 Web 应用程序捆绑软件。
提示: 请确保 JPA 持久性文件包含对 Java™ 事务 API (JTA) 和非 JTA 数据源的引用。
JPA 提供了两种事务模式来访问数据源:
- jta-data-source
- Java Transaction API (JTA) 资源模式依赖于全局事务。JTA 资源模式通常在
Enterprise JavaBeans (EJB) 会话面的作用域内使用。此配置允许会话 Bean 在 JPA 处理持久性映射时控制事务和安全上下文。在这种情况下,应用程序不使用 EntityTransaction 接口,而是依赖于全局事务在被访问时随全局事务一起列出的 EntityManager。
- non-jta-data-source
- 在缺乏全局事务的情况下,将使用非 JTA 资源模式来处理单个资源。通常在 Web 应用程序或应用程序客户机的作用域中使用非 JTA 资源模式。应用程序通过 EntityTransaction 接口来控制与数据源之间的事务。
在 OSGi 应用程序的 persistence.xml 文件中,jta-data-source 和 non-jta-data-source 元素通过 Java 命名和目录接口 (JNDI) 查找(针对服务注册表的 JNDI 查询)或通过蓝图访问数据源。
如果在 persistence.xml 文件中未配置 JTA 和非 JTA 数据源,那么将使用为服务器配置的缺省 JTA 和非 JTA 数据源。缺省情况下,这些值是空值。某些 JPA 实体功能需要指定非 JTA 数据源。例如,自动实体身份生成。