Апач OpenEJB
Разработчик(и) | Фонд программного обеспечения Apache |
---|---|
Первоначальный выпуск | декабрь 1999 г |
Стабильная версия | 7.0.3
/ 7 марта 2017 г |
Написано в | Ява |
Операционная система | Кросс-платформенный |
Тип | EJB Контейнерная система |
Лицензия | Лицензия Апач 2.0 |
Веб-сайт | openejb |
OpenEJB — это с открытым исходным кодом встраиваемая и легкая система контейнеров Enterprise JavaBeans и сервер EJB, выпущенная по лицензии Apache 2.0. OpenEJB интегрирован с серверами приложений Java EE, такими как Geronimo. [1] и веб-объекты . [2]
История
[ редактировать ]появлялись новые поставщики, OpenEJB был основан Ричардом Монсоном-Хефелем и Дэвидом Блевинсом в декабре 1999 года. В то время в корпоративном пространстве Java казалось бы, каждую неделю. Вместо того, чтобы присоединиться к этой сфере в качестве конкурента, проект был полностью сосредоточен на предоставлении этим новым платформам возможности быстро обеспечить соответствие EJB путем подключения OpenEJB к их серверу приложений.
Первым, кто интегрировал OpenEJB таким образом, была компания Apple WebObjects проект перешел на Source Forge, в конце 2000 года, выпущенная в 2001 году. Когда в 2002 году была создана интеграция с Apache Tomcat . Опять же, вместо того, чтобы следовать тому, что делало большинство в отрасли, и включать Tomcat в OpenEJB, проект решил следовать своему видению и обеспечить интеграцию, которая позволила бы пользователям Tomcat подключить OpenEJB, чтобы получить поддержку EJB на платформе Tomcat. По такому же принципу размещения EJB-контейнера на веб-сервере в проекте была разработана концепция Collapsed EAR, заключающаяся в помещении EJB в файл .war.
В рамках работы, проделанной OpenEJB по подготовке к интеграции с Apple WebObjects, был разработан очень большой набор интеграционных тестов. Набор тестов был разработан как универсальное приложение, поскольку его нужно будет запускать как с WebObjects , так и с другими платформами, интегрированными с OpenEJB. Для простоты сборки набор тестов, основанный на JUnit , запускался с OpenEJB прямо внутри тестов, а не как отдельный процесс, что было легко сделать, поскольку контейнер был спроектирован так, чтобы его можно было подключать к другим платформам и делать как можно меньше предположений о его работе. окружающую среду, насколько это возможно. Именно в результате этой работы родилась концепция объединения EJB-приложения с простыми модульными тестами и встраиваемым EJB-контейнером. Первоначально назывался «локальным» EJB-контейнером, поэтому проект описывался как способный работать в двух режимах: локальном и удаленном.
В августе 2003 года проект помог запустить сервер приложений Apache Geronimo . Первоначально новая версия OpenEJB была разработана на основе архитектуры Geronimo GBean и выпущена как OpenEJB 2.0, которая существовала на протяжении всего цикла Geronimo 1.x. В 2006 году, когда был выпущен EJB 3.0, ориентированный на простоту, проект вернулся к своим корням и возродил кодовую базу OpenEJB 1.0 , перенес некоторые фрагменты кодовой базы 2.0 и в конечном итоге довел ее до уровня спецификации EJB 3.0 в том виде, в каком теперь называется OpenEJB 3.0.
Версия | Дата выпуска | Описание |
---|---|---|
0.01 (первоначальная версия) | декабрь 1999 г. | Родился в Экзолабе. |
Январь 2002 г. | Перемещено на SourceForge.net. | |
март 2004 г. | Переехал в Кодхаус. | |
29 сентября 2006 г. | Переехал в инкубатор Apache. | |
1 июня 2007 г. | Окончил Apache OpenEJB. | |
4.7.3 | 4 декабря 2015 г. | Последняя стабильная версия |
Основные особенности
[ редактировать ]- Поддерживает EJB 3.0, 2.1, 2.0, 1.1 во всех режимах; встроенный, автономный или иной.
- Частичная поддержка EJB 3.1.
- JAX-WS Поддержка
- JMS Поддержка
- соединителя J2EE Поддержка
- Может быть добавлен в Tomcat 5 или 6, добавляя различные функции JavaEE 5 и EJB 3.0 к стандартной установке Tomcat.
- Поддержка CMP реализована через JPA, что позволяет свободно смешивать использование CMP и JPA.
- Полная поддержка дескрипторов GlassFish , позволяющая пользователям выполнять встроенное тестирование своих приложений.
- Невероятно гибкая поддержка имен JNDI позволяет указывать форматы на макро- и микроуровнях и имитировать форматы других поставщиков.
- Позволяет легко тестировать и отлаживать в таких IDE , как Eclipse , IntelliJ IDEA или NetBeans, без необходимости использования подключаемых модулей .
- Можно использовать в обычных JUnit или других стилях тестовых примерах без сложной настройки или внешних процессов.
- Полностью проверяет приложения и сообщает обо всех сбоях одновременно с тремя выбираемыми уровнями детализации, что позволяет избежать многочасовых циклов «исправление, перекомпиляция, повторное развертывание, сбой, повторение».
- OSGi Поддержка [3]