Проверка CDI и бина на сервере приложений Java EE 5? - PullRequest
4 голосов
/ 07 октября 2011

CDI и проверка компонентов - это стандартные спецификации Java EE 6. Тем не менее, я могу использовать оба в серверах приложений Java EE 5 (а также в Java SE), просто добавив библиотеки в проект.

Это правильно?

Есть ли какие-либо недостатки в использовании обоих серверов приложений Java EE 5 вместо серверов приложений Java EE 6?

Мне нужно использовать Oracle 11 g Suite и JDeveloper. Тем временем JDeveloper поддерживает JSF 2.0, но я не могу найти никакой поддержки для Bean Validation или CDI. Тем не менее, это не проблема. Поддержка IDE отсутствует (для генерации кода, пошагового руководства или чего-либо еще), но я могу использовать эти библиотеки с помощью простого редактора Java. Верно?

Ответы [ 3 ]

4 голосов
/ 07 октября 2011

Java EE 6 - это в основном набор API.Сервер приложений совместим с Java EE 6, если он реализует все эти спецификации.Но вы все равно можете использовать API на сервере приложений, совместимом с Java EE 5.Некоторые люди даже помещают EJB в Tomcat, так что технически это возможно.Тем не менее, имеет смысл использовать совместимый AS, поскольку он также предоставляет все услуги, связанные со спецификациями.

0 голосов
/ 16 октября 2011

Вы можете довольно легко добавить Apache OpenWebBeans или JBoss Weld (выберите одну из двух реализаций CDI) в свой WEB-INF / lib и зарегистрировать прослушиватели сервлетов в своем файле web.xml вручную.Вуаля, тогда у вас есть поддержка CDI!

Для проверки bean-компонентов JSR-303 это немного сложнее, потому что этим пользуются только JPA2 и JSF2.Поэтому вам нужно добавить Myfaces2 и Hibernate-3.5, EclipseLink2 или OpenJPA2 в ваши локальные банки и отключить варианты, предоставленные контейнером.

0 голосов
/ 07 октября 2011

Я считаю, что это правильно.

Недостатком является то, что вы версия позади.Возможно, вам придется изменить свой код, если и когда вы решите перейти на Java EE 6 (например, новый импорт и т. Д.)

...