The body of any
XML document begins and ends with
the tag for the
document’s "root element,” which is defined
by the DTD. For a deployment descriptor, the root element is named
ejb-jar
, and looks like this:
<ejb-jar> ... other elements ... </ejb-jar>
All other elements must be nested within the
ejb-jar
element. You can
place the following kinds of elements within
ejb-jar
:
<description>
(optional)The description
element can be used to provide a
description of this deployment descriptor. This element can be used
in many contexts within a deployment descriptor: to describe the
descriptor as a whole, to describe particular beans, to describe
particular security roles, etc. The Cabin bean deployment descriptor
doesn’t use a description element for the deployment descriptor
as a whole, but it does provide a description for the Cabin bean
itself.
<display-name>
(optional)The display-name
element is used by tools (like a
deployment wizard) that are working with the deployment descriptor.
It provides a convenient visual label for the entire JAR file and
individual bean components.
<small-icon>
and <large-icon>
(optional)These elements point to files within the JAR file that provide icons that a deployment wizard or some other tool can use to represent the JAR file. Icons must be image files in either the JPEG or GIF format. Small icons must be 16 × 16 pixels; large icons must be 32 × 32 pixels. These icon elements are also used in the entity and session elements to represent individual bean components.
<enterprise-beans>
(one required)The enterprise-beans
element contains descriptions
of the bean or beans that are contained in this JAR file. A
deployment descriptor must have one, and only one,
enterprise-beans
element. Within this element,
entity
and session
elements
describe the individual beans.
<ejb-client-jar>
(optional)The ejb-client-jar
provides the path of the client
JAR, which normally contains all the classes (including stubs, remote
and home interface classes, etc.) that the client will need to access
the beans defined in the deployment descriptor. How client JAR files
are organized and delivered to the client is not
specified—consult your vendor’s documentation.
<assembly-descriptor>
(optional)The application assembler or bean developer adds an
assembly-descriptor
element to the deployment
descriptor to define how the beans are used in an actual application.
The assembly-descriptor
contains a number of
elements that define the security roles used to access the bean, the
method permissions that govern which roles can call different
methods, and transactional attributes.
All of these elements are quite simple, except for the
enterprise-beans
element and the
assembly-descriptor
element. These two elements
contain a lot of other material nested within them. We’ll look
at the enterprise-beans
element first.