Введение
Apache Beehive – это устаревший Java Application Framework, разработанный для упрощения разработки приложений на основе Java EE. Он использует различные проекты с открытым исходным кодом Apache, такие как XMLBeans. Apache Beehive использует Java 5, включая JSR 175 – механизм аннотирования полей, методов и классов для их специальной обработки инструментами во время выполнения. Он построен на основе фреймворка, разработанного для BEA Systems WebLogic Workshop версии 8.1. Позже BEA приняла решение передать код в Apache.
Apache Beehive is a discontinued Java Application Framework that was designed to simplify the development of Java EE based applications. It makes use of various open source projects at Apache, such as XMLBeans. Apache Beehive uses Java 5, including JSR 175, a facility for annotating fields, methods, and classes so that they can be treated in special ways by runtime tools. It builds on the framework developed for BEA Systems WebLogic Workshop for its 8.1 series. BEA later decided to donate the code to Apache.
История
Версия 8.1 WebLogic Workshop от BEA включает в себя ряд улучшений по сравнению с версией 7.0. Предыдущая версия была ориентирована на быстрое создание надежных веб-сервисов, но не получила широкого распространения и признания. Для версии 8.1 компания BEA разработала совершенно новую интегрированную среду разработки (IDE), которая позволила программистам быстрее разрабатывать приложения на основе Java EE. Улучшения в версии 8.1 по сравнению с версией 7 были отмечены несколькими наградами. Несмотря на ограниченный успех Workshop 8.1, WebLogic Workshop Framework, разработанный для этой версии Workshop, был признан надежной основой. Чтобы обеспечить возможность его использования с другими серверами приложений на основе Java EE, BEA приняла решение открыть исходный код проекта под эгидой Apache Software Foundation. Последняя версия Beehive была выпущена 4 декабря 2006 года, а в январе 2010 года проект был перенесен в Apache Attic.
Чистые потоки страниц
Это фреймворк приложений, построенный на основе Apache Struts, который упрощает работу с инструментами и обеспечивает автоматическое обновление различных файлов конфигурации Struts.
Контроль
Контролы – это ядро фреймворка Beehive. Контрол можно определить как программу, которую разработчик может использовать для доступа к ресурсам корпоративного уровня, таким как Enterprise Java Beans (EJB), веб-сервисы и т. п. Например, рассмотрим доступ к устаревшему EJB 2 бину. Это требовало большого количества шаблонного кода, например, получения доступа к домашнему интерфейсу, создания/поиска EJB с использованием методов поиска, а затем вызова удаленных методов бина. Использование контрола упрощает этот процесс, беря на себя большую часть шаблонного кодирования, позволяя разработчику сосредоточиться на бизнес-логике, а не на внутренних деталях технологии Java EE. Контролы также полезны для опытных разработчиков, позволяя им концентрироваться на таких задачах, как создание фасада для сложного набора прикладных API. По сути, контрол для устаревшего EJB 2 бина гарантировал, что разработчик мог просто использовать контрол и вызывать любой бизнес-метод EJB, используя его как любой другой класс Java. С появлением EJB 3 такое упрощение уже предоставлялось самой спецификацией EJB, и контролы Beehive стали менее востребованы. Фреймворк поставляется со стандартным набором контролов, включающим EJB Control, Web service Control, Database Control и JMS Control. Также можно разрабатывать пользовательские контролы, которые, в свою очередь, могут использовать уже встроенные контролы.
Веб-сервисы
Этот третий компонент Beehive позволяет разработчику создавать веб-сервисы, используя метаданные или аннотации. С помощью метаданных или аннотаций можно создавать сложные веб-сервисы с использованием таких возможностей, как сессии, состояние и другие. Поскольку все метаданные или аннотации находятся в одном файле, отладка и поддержка становятся проще. При таком подходе любой обычный Java-класс можно преобразовать в веб-сервис, просто добавив аннотации в исходный код Java. Это основано на JSR 181, который, в свою очередь, базируется на JSR 175.