В нашем приложении используется объектный компонент BMP ejb 2.1. Все взаимодействия с базой данных осуществляются через простой JDBC и транзакции. commit / rollback обрабатывается в сессионном компоненте, который вызывает объектный компонент 2.1. Мы планируем удалить слой бина сущности, поскольку он больше не поддерживается контейнерами Java EE.
Это достигается путем преобразования бина сущности в слой POJO DAO и удаления определения бина из ejb-jar.xml. resource-ref определены для всех бинов сущности.
Достаточно ли убедиться, что если сессионный компонент, вызывающий компонент 2.1, имеет тот же самый ресурс-ref, определенный?
могу ли я удалить определение бина сущности вместе со ссылкой на ресурс и продолжать использовать его в качестве слоя 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>
Боб сотрудника. Я преобразую из EJB в POJO и удаляю определение сущности из ejb-jar.xml. Будет ли взаимодействие с базой данных работать без ссылки на ресурс и будет ли оно участвовать в транзакции JTA, если вызывающий сессионный компонент определил ту же ссылку на ресурс?