<?xml version="1.0" encoding="utf-8"?> | |
<!--Arbortext, Inc., 1988-2006, v.4002--> | |
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" | |
"concept.dtd"> | |
<concept id="cejb3" xml:lang="en-us"> | |
<title>Developing EJB 3.0 Applications</title> | |
<shortdesc>You can use the workbench to develop and test enterprise beans | |
that conform to the distributed component architecture defined in the Sun | |
Microsystems Enterprise JavaBeans (EJB) 3.0 specification.</shortdesc> | |
<prolog><metadata> | |
<keywords><indexterm>Enterprise JavaBeans 3.0</indexterm></keywords> | |
</metadata></prolog> | |
<conbody> | |
<p> Using this specification, you can develop beans more simply than in the | |
2.1 standard. You can annotate your Java source code to provide information | |
that was previously contained in XML deployment descriptors. Using <tm tmclass="special" | |
tmowner="Sun Microsystems, Inc." tmtype="tm" trademark="Java">Java</tm> annotations | |
allows you to create EJBs and <tm tmclass="special" tmowner="Sun Microsystems, Inc." | |
tmtype="tm" trademark="Java">Java</tm> Persistence Architecture (JPA) beans | |
quickly and easily from “plain old <tm tmclass="special" tmowner="Sun Microsystems, Inc." | |
tmtype="tm" trademark="Java">Java</tm> objects (POJOs). For EJBs, these can | |
be created without implementing EnterpriseBean interfaces. </p> | |
<p>This product supports the Enterprise JavaBeans 2.1 and 3.0 specification | |
levels. All of the EJB tools in the product are accessible from the <tm tmclass="special" | |
tmowner="Sun Microsystems, Inc." tmtype="tm" trademark="Java">Java</tm> EE | |
perspective in the workbench. You can create session beans (stateful or stateless) | |
or message-driven beans, by simply specifying the component defining annotation | |
in your POJO. Additional configuration for your bean can be done by specifying | |
additional annotations in the <tm tmclass="special" tmowner="Sun Microsystems, Inc." | |
tmtype="tm" trademark="Java">Java</tm> class. The <tm tmclass="special" tmowner="Sun Microsystems, Inc." | |
tmtype="tm" trademark="Java">Java</tm> editor provides validation, content | |
assistance and QuickFixes for your EJB 3.0 annotations, as well as support | |
for refactoring beans. For richer assistance with the EJB 3.0 annotations, | |
you can use the Annotations view to add or delete annotations, and to modify | |
the attribute values of annotations. Deployment descriptors for your EJB 3.0 | |
modules are optional, but can be created for additional configuration.</p> | |
<p>Java EE 5 streamlines EJB development in the following ways: <ul> | |
<li>Fewer required classes and interfaces<ul> | |
<li>Home and object interfaces are no longer required – you need the business | |
interface only</li> | |
<li>No need to implement javax.ejb.SessionBean</li> | |
<li>No need to declare checked exceptions</li> | |
</ul></li> | |
<li>Optional deployment descriptors<ul> | |
<li>Annotations provide component definition and dependency injection</li> | |
</ul></li> | |
<li>Simple lookups<ul> | |
<li>new EJBContext() interface method replaces JNDI calls</li> | |
</ul></li> | |
<li>Lightweight persistence for object-relational mapping<ul> | |
<li>Entities are POJOs that provide an object-oriented view of the data stored | |
in relational database</li> | |
</ul></li> | |
<li>New Interceptors class (new in Java EE 5)<ul> | |
<li>Interceptors are objects that can intercept a call to a business method | |
(to handle security for example)</li> | |
<li>Similar in purpose and action to servlet filter or Web services handler</li> | |
<li>Provide limited form of aspect-oriented programming</li> | |
</ul></li> | |
</ul></p> | |
<p>For further additional information on EJB 3.0, see the official specification: <xref | |
href="http://jcp.org/en/jsr/detail?id=220" scope="external">JSR 220: Enterprise <tm | |
tmclass="special" tmowner="Sun Microsystems, Inc." tmtype="tm" trademark="JavaBeans">JavaBeans</tm> 3.0 </xref></p> | |
</conbody> | |
</concept> |