This chapter is for the Enterprise Bean provider; that is, the person in charge of developing the software components on the server side.
The bean programmer is responsible for providing the deployment descriptor associated with the developed Enterprise Beans. The Bean Provider's responsibilities and the Application Assembler's responsibilities are to provide an XML deployment descriptor that conforms to the deployment descriptor's XML schema as defined in the EBJ specification version 2.0. (Refer to $JONAS_ROOT/xml/ejb-jar_2_1.xsd or http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd).
To deploy Enterprise JavaBeans on the EJB server, information not defined in the standard XML deployment descriptor may be needed. For example, this information may include the mapping of the bean to the underlying database for an Entity Bean with container-managed persistence. This information is specified during the deployment step in another XML deployment descriptor that is specific to JOnAS. The JOnAS-specific deployment descriptor's XML schema is located in $JONAS_ROOT/xml/jonas-ejb-jar_X_Y.xsd. The file name of the JOnAS-specific XML deployment descriptor must be the file name of the standard XML deployment descriptor prefixed by "jonas-".
The parser gets the specified schema via the classpath (schemas are packaged in the $JONAS_ROOT/lib/common/ow_jonas.jar file).
The standard deployment descriptor should include the following structural information for each Enterprise Bean:
The Enterprise Bean's name
The Enterprise Bean's class
The Enterprise Bean's home interface
The Enterprise Bean's remote interface
The Enterprise Bean's type
A re-entrancy indication for the Entity Bean
The Session Bean's state management type
The Session Bean's transaction demarcation type
The Entity Bean's persistence management
The Entity Bean's primary key class
Container-managed fields
Environment entries
The bean's EJB references
Resource manager connection factory references
Transaction attributes.
The JOnAS-specific deployment descriptor contains information for each Enterprise Bean including:
The JNDI name of the Home object that implement the Home interface of the Enterprise Bean
The JNDI name of the DataSource object corresponding to the resource manager connection factory referenced in the Enterprise Bean's class
The JNDI name of each EJB references
The JNDI name of JMS administered objects
Information for the mapping of the bean to the underlying database, if it is an entity with container-managed persistence.