Identify correctly-implemented deployment descriptor elements for a CMP bean (including container-managed relationships).

The deployment descriptor is part of the contract between the ejb-jar file producer and consumer.

The entity element declares an entity bean. The declaration consists of:

An optional set of query declarations for finder and select methods for an entity bean with cmp-version 2.x :
					
<!ELEMENT entity (description?, display-name?, small-icon?,
	large-icon?, ejb-name, home?, remote?, local-home?,
	local?, ejb-class, persistence-type, prim-key-class,
	reentrant, cmp-version?, abstract-schema-name?,
	cmp-field*, primkey-field?, env-entry*, ejb-ref*,
	ejb-local-ref*, security-role-ref*, security-identity?,
	resource-ref*, resource-env-ref*, query*)>
					
					
Mandatory elements are:

Example of Entity Bean deployment descriptor (with relationship):


<ejb-jar>
<enterprise-beans>
...
<entity>
	<ejb-name>ReservationEJB</ejb-name>
	<local-home>com.titan.reservation.ReservationHomeLocal</local-home>
	<local>com.titan.reservation.ReservationLocal</local>
	<ejb-class>com.titan.reservation.ReservationBean</ejb-class>
	<persistence-type>Container</persistence-type>
	<prim-key-class>java.lang.Integer</prim-key-class>
	<reentrant>False</reentrant>
	<cmp-version>2.x</cmp-version>
	<abstract-schema-name>Reservation</abstract-schema-name>
	<cmp-field><field-name>id</field-name></cmp-field>
	<cmp-field><field-name>amountPaid</field-name></cmp-field>
	<cmp-field><field-name>date</field-name></cmp-field>
	<primkey-field>id</primkey-field>
	<security-identity><use-caller-identity/></security-identity>
	<query>
		<query-method>
			<method-name>findWithPaymentGreaterThan</method-name>
			<method-params>
				<method-param>java.lang.Double</method-param>
			</method-params>
		</query-method>
		<ejb-ql>
			SELECT OBJECT( r ) FROM Reservation r
			WHERE r.amountPaid &gt; ?1
		</ejb-ql>
	</query>
</entity>
<entity>
	<ejb-name>CabinEJB</ejb-name>
	<local-home>com.titan.cabin.CabinHomeLocal</local-home>
	<local>com.titan.cabin.CabinLocal</local>
	<ejb-class>com.titan.cabin.CabinBean</ejb-class>
	<persistence-type>Container</persistence-type>
	<prim-key-class>java.lang.Integer</prim-key-class>
	<reentrant>False</reentrant>
	<cmp-version>2.x</cmp-version>
	<abstract-schema-name>Cabin</abstract-schema-name>
	<cmp-field><field-name>id</field-name></cmp-field>
	<cmp-field><field-name>name</field-name></cmp-field>
	<cmp-field><field-name>deckLevel</field-name></cmp-field>
	<cmp-field><field-name>bedCount</field-name></cmp-field>
	<primkey-field>id</primkey-field>
	<security-identity><use-caller-identity/></security-identity>
</entity>
...
</enterprise-beans>
<relationships>
	<ejb-relation>
		<ejb-relation-name>Cabin-Reservation</ejb-relation-name>
		<ejb-relationship-role>
			<ejb-relationship-role-name>
				Cabin-has-many-Reservations
			</ejb-relationship-role-name>
			<multiplicity>Many</multiplicity>
			<relationship-role-source>
				<ejb-name>CabinEJB</ejb-name>
			</relationship-role-source>
		</ejb-relationship-role>
		<ejb-relationship-role>
			<ejb-relationship-role-name>
				Reservation-has-many-Cabins
			</ejb-relationship-role-name>
			<multiplicity>Many</multiplicity>
			<relationship-role-source>
				<ejb-name>ReservationEJB</ejb-name>
			</relationship-role-source>
			<cmr-field>
				<cmr-field-name>cabins</cmr-field-name>
				<cmr-field-type>java.util.Set</cmr-field-type>
			</cmr-field>
		</ejb-relationship-role>
	</ejb-relation>
</relationships>
...
</ejb-jar>

					

Professional hosting     Belorussian informational portal         Free SCWCD 1.4 Study Guide     Free SCDJWS 1.4 Study Guide     SCDJWS 1.4 Quiz     Free IBM Certified Associate Developer Study Guide     IBM Test 000-287. Enterprise Application Development with IBM WebSphere Studio, V5.0 Study Guide     Free Mock Exam Engine