С Seam вы можете использовать либо Hibernate, либо JPA (EntityManager). Он работает независимо от EJB. Вы можете использовать обычный POJO, если хотите.
Как я могу получить доступ к использованию Hibernate в моем компоненте SEAM?
Вот настройки Hibernate WEB-INF/components.xml
Настройки SessionFactory
<persistence:hibernate-session-factory name="sessionFactory" cfg-resource-name="app.cfg.xml"/>
Расположение app.cfg.xml в корне пути к классам
Настройки сеанса
<persistence:managed-hibernate-session name="session" hibernate-session-factory="#{sessionFactory}" auto-create="true"/>
Настройки управления транзакциями
<!--It takes care of calling begin and commit in the underlying Transaction API-->
<!--Here a Hibernate Transaction API-->
<tx:hibernate-transaction session="#{session}"/>
Чтобы внедрить сеанс Hibernate, вы можете использовать
/**
* Seam lookup Seam enabled components Through its referenced name - session
*/
private @In Session session;
Имейте в виду, что Seam работает с любой инфраструктурой MVC, хотя по умолчанию использует Java Server Faces. Вы можете создать даже свои собственные возможности MVC, если хотите. Взгляните на JBoss Seam Tuto.
person
Arthur Ronald
schedule
09.08.2010