blob: 5508f55431c96bcb9f9f044201ab2c919926119c [file] [log] [blame]
<?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>