Advanced | Help | Encyclopedia
Directory


Apache beehive

Apache Beehive is an extensive Java Application Framework designed to make the development of J2EE based applications quicker and easier. It leverages the latest innovations in Java 5 which includes JSR-175 which is a facility for annotating fields,methods and classes so that they can be treated in special ways by runtime tools. It also leverages various open-source projects at Apache like XMLBeans It builds on the framework developed for BEA Systems Weblogic Workshop for its 8.1 series, and which was later decided by BEA Systems to donate to Apache, so that a wider-audience gets a first-hand experience of the ease-of-development features of Beehive.


When BEA Systems came up with 8.1 version of its Weblogic Workshop, it made significant enhancements to 7.0 version. The 7.0 version was more focussed on creating industry-strength web services quickly, however 7.0 did not have much customers, and it failed to create a stir in the market. However for 8.1 version, BEA Systems created a whole new IDE which helped the developers to develop J2EE-based applications quickly. This was significantly better than 7.0 with more advanced features and also won several awards and gained a lot of critical acclaim. However a new revolution was brewing in the Java Universe in the form of Eclipse and it seemed like everyone was moving towards it. Hence once again BEA failed to gain good market-share despite having a good-product. Although Workshop 8.1 did not succeed as much as it intented to, the Weblogic Workshop Framework which was developed for 8.1 version Workshop was recognized as a good solid framework and hence in order that it can be used with other J2EE based Application Server, it was decided by BEA Systems to make it a Open-source project at Apache

Table of contents

Beehive components

Netui Page Flows

This is an application framework built on top of Struts which allows easier tooling and automatic updating of the various config files such as struts.config.xml

Controls

This is the heart of Beehive framework. A control can be defined as a program which can be used by the developer to quickly gain access to enterprise-level reources such as EJB, Webservices etc. For eg consider accessing a EJB. It involves a lot of boiler-plate code like getting an access to home interface, then creating/finding a EJB using finder methods and then accessing the remote methods of the bean. Using a control simplifies this because it does most of the boiler-plate or routine coding for the developer, who can concentrate more on business logic rather than worrying about the inner-details of J2EE Technology. If the developer is high-quality, even then it is useful because then the developer can concentrate on more useful things like constructing a Facade to a complex set of Application API's. In essence a control to an EJB ensures that the developer can simply use the control and call any business method of the EJB, using it in the same way as any other Java class. The Controls comes with a standard set of controls wiz EJB Control, Webservice Control, Database Control and JMS Control. Custom controls can also be developed which in turn could make use of the controls already built-in.

Webservices

This is the third component of Beehive and it enables a developer to create webservices using meta-data/annotations quickly. In essence by using meta-data/annotations one can create complex webservices utilizing features like conversation,state etc quickly and since all the meta-data/annotations are in one file, it is easier to debug and maintain. Using this approach any plain java class can be converted into a web service just by the addition of annotations into the java source files. This is based on JSR-181 which builds on JSR-175.

External links








Links: Addme | Keyword Research | Paid Inclusion | Femail | Software | Completive Intelligence

Add URL | About Slider | FREE Slider Toolbar - Simply Amazing
Copyright © 2000-2008 Slider.com. All rights reserved.
Content is distributed under the GNU Free Documentation License.