Java EE 6 - El patrón de objetos de dominio persistente: ¿algún éxito?

Tengo una aplicación moderadamente compleja que utiliza POJO, y ahora migré a EJB3.1 para que pueda implementarse en línea, acceder a través de los servicios REST y beneficiarse del entorno del contenedor (la persistencia es la más importante, pero las transacciones también serían útiles ).

He estado alejado de Java EE desde los días de J2EE, y estoy luchando por entender la "pérdida" de beans de entidad. Me tomó un tiempo darme cuenta de que las Entidades en EJB3.1 no son en realidad Beans en el sentido anterior ... :) He leído varios libros de EJB3, incluido el "manual" O'Reilly Enterprise JavaBeans 3.1, todos los cuales explican los conceptos y componentes de EJB3 pero no las opciones del patrón de implementación.

En mi investigación e investigación en busca de patrones Java EE 6, estoy bastante convencido por el enfoque de Adam Bien, particularmente el patrón "Objetos de dominio persistente" (PDO) (en su libro, pero resumido aquí también:http: //download.java.net/general/podcasts/real_world_java_ee_patterns.pd), que parece ofrecer la menor complejidad y la mayor sinergia con mi aplicación POJO actual. PDO también se alinea estrechamente con las filosofías y enfoques tradicionales orientados a objetos, y realmente me atrae.

En lugar de volver a entablar un debate sobre PDO, me interesa saber de las personas que lo han implementado y qué funcionó en comparación con dónde tuvo dificultades. En particular, me gustaría saber cómo hiciste llamadasdesd Entidades JPA a otros servicios en el contenedor (como llamadas a beans de sesión sin estado, etc.).

También me encantaría saber si hay alternativas al patrón PDO que me permitan mantener la estructura de la aplicación (usando polimorfismo, etc.) sin tener que crear un bean de sesión y una entidad JPA para cada clase en mi modelo. (No quiero hacer eso en parte debido al ejercicio masivo requerido para refactorizar todas las pruebas de unidad e integración, y en parte porque, por lo que puedo ver, terminaré tratando de replicar mi relación de objeto 1toMany, etc. a través de mi sesión de beans también, lo que parece una locura).

¿Alguien tiene alguna experiencia para compartir, o si desea señalar que soy un idiota y me he perdido algo fundamental en Java EE 6 que también sería "bienvenido":

TIA

Respuestas a la pregunta(2)

Su respuesta a la pregunta