У меня есть довольно сложное приложение, использующее POJO, и теперь пришло время перенести его на EJB3.1, чтобы его можно было развернуть в режиме онлайн, получить доступ через службы REST и воспользоваться преимуществами контейнерной среды (постоянство является наиболее важным, но транзакции будуттоже полезно).
Я был далеко от Java EE со времен J2EE и изо всех сил пытаюсь разобраться с "потерей" бинов сущностей.Мне потребовалось некоторое время, чтобы понять, что сущности в EJB3.1 на самом деле не являются Бобами в старом смысле ... :) Я прочитал несколько книг по EJB3, включая «руководство» O'Reilly Enterprise JavaBeans 3.1, все из которых объясняютконцепции и компоненты EJB3, но не варианты шаблонов реализации.
В моих исследованиях и поисках шаблонов Java EE 6 я скорее придерживался подхода Адама Бина, в частности «Постоянных доменных объектов» (PDO)шаблон (в своей книге, но суммированный здесь также: http://download.java.net/general/podcasts/real_world_java_ee_patterns.pdf),, который, по-видимому, предлагает наименьшую сложность и большую синергию с моим текущим приложением POJO. PDO также тесно согласуется с традиционной объектно-ориентированной философией и подходом и действительно обращается кменя.
Вместо того, чтобы разжигать дебаты по поводу PDO, мне интересно услышать от людей, которые внедрили его и что сработало, там, где у вас возникли трудности. В частности, я хотел бы узнать, как вы это сделали.звонит из объектов JPA в другие службы вконтейнер (например, вызовы сеансовых компонентов без сохранения состояния и т. д.).
Я также хотел бы знать, есть ли альтернативы шаблону PDO, которые позволяют мне поддерживать структуру приложения (используя полиморфизм и т. д.) без необходимости создаватьсессионный компонент и сущность JPA для каждого класса в моей модели.(Я не хочу делать это отчасти из-за большого объема упражнений, необходимых для рефакторинга всех модульных и интеграционных тестов, а отчасти потому, что, насколько я вижу, я в конечном итоге попытаюсь повторить мои объектные отношения 1toMany и т. Д.через мои сессионные бобы тоже, что кажется сумасшедшим).
Есть ли у кого-нибудь опыт, которым можно поделиться - или если вы хотите отметить, что я идиот и пропустил что-то фундаментальное в Java EE 6, что тоже будет "приветствоваться":)
ТИА