0

我们的应用程序使用 BMP ejb 2.1 实体 bean。所有数据库交互都是通过普通的 JDBC 和事务进行的。提交/回滚在调用 2.1 实体 bean 的会话 bean 处处理。我们计划删除实体 bean 层,因为 Java EE 容器不再支持它。这是通过将实体 bean 转换为 POJO DAO 层并从 ejb-jar.xml 中删除 bean 定义来实现的。resource-ref 是为所有实体 bean 定义的。
是否足以确保调用 2.1 实体 bean 的会话 bean 定义了相同的资源引用?
我可以删除实体 bean 定义以及资源引用并继续用作 POJO DAO 层吗?

我尝试了删除实体定义以及资源引用的相同方法,并验证数据库提交是否正常工作。想检查我是否错过了考虑任何用例。

    <enterprise-beans>
       <entity>
          <display-name>EmployeeBean</display-name>
          <ejb-name>EmployeeBean</ejb-name>
          <local-home>employee.EmployeeHome</local-home>
          <local>employee.Employee</local>
          <ejb-class>employee.EmployeeBean</ejb-class>
          <persistence-type>Bean</persistence-type>
          <prim-key-class>employee.EmployeePK</prim-key-class>
          <reentrant>False</reentrant>
          <resource-ref>
                <res-ref-name>jdbc/OracleDS</res-ref-name>
                <res-type>javax.sql.DataSource</res-type>
                <res-auth>Application</res-auth>
                <res-sharing-scope>Shareable</res-sharing-scope>
          </resource-ref>
       </entity>
    </enterprise-beans>

Employee Bean 我正在从 EJB 转换为 POJO 并从 ejb-jar.xml 中删除实体定义。如果调用会话 bean 定义了相同的资源引用,数据库交互是否仍然可以在没有资源引用的情况下工作,并且它是否会参与 JTA 事务?

4

0 回答 0