Identify correct and incorrect statements about the Application Assembler's responsibilities, including the use of deployment descriptor elements related to transactions and the identification of the methods of a particular bean type for which a transaction attribute must be specified.

There is NO mechanism for an Application Assembler to affect enterprise beans with bean-managed transaction (BMT) demarcation. The Application Assembler MUST NOT define transaction attributes for an enterprise bean with bean-managed transaction demarcation.

The Application Assembler can use the transaction attribute mechanism to manage transaction demarcation for enterprise beans using container-managed transaction demarcation. NOTE, the transaction attributes may be specified either by the Bean Provider or by the Application Assembler.

The Application Assembler uses the container-transaction elements to define the transaction attributes for the methods of session and entity bean home and component interfaces and for the onMessage methods of message-driven beans. Each container-transaction element consists of a list of one or MORE method elements, and the trans-attribute element. The container-transaction element specifies that all the listed methods are assigned the specified transaction attribute value. It is required that all the methods specified in a single container-transaction element be methods of the SAME enterprise bean.


</ejb-jar>
	...
	<container-transaction>
		<method>	
			<ejb-name>Employee</ejb-name>
			<method-intf>LocalHome</method-intf>
			<method-name>create</method-name>
			<method-params>
				<method-param>java.lang.String</method-param>
			</method-params>
		</method>
		<trans-attribute>Required</trans-attribute>
	</container-transaction>
	<container-transaction>
		<method>
			<ejb-name>Employee</ejb-name>
			<method-intf>LocalHome</method-intf>
			<method-name>findAll</method-name>
			<method-params />
		</method>
		<trans-attribute>Supports</trans-attribute>
	</container-transaction>
 	...
</ejb-jar>

					

The method element uses the ejb-name, method-name, and method-params elements to denote one or more methods of an enterprise bean's home and component interfaces. There are THREE legal styles of composing the method element:


<!-- Style 1 -->
<method>
	<ejb-name>EJBName</ejb-name>
	<method-name>*</method-name>
</method>

					

<!-- Style 2 -->
<method>
	<ejb-name>EJBName</ejb-name>
	<method-name>MethodName</method-name>
</method>

					

<!-- Style 3 -->
<method>
	<ejb-name>EJBName</ejb-name>
	<method-name>MethodName</method-name>
	<method-params>
		<method-param>ParameterType_1</method-param>
		...
		<method-param>ParameterType_N</method-param>
	</method-params>
</method>

					
Style 2 element takes precedence over Style 1 element. Style 3 element takes precedence over Style 2 and Style 1 elements.

The optional method-intf element can be used to differentiate between methods with the same name and signature that are multiply defined across the component and/or home interfaces (must be one of the following: Home, Remote, LocalHome, Local).

The following is an example of the specification of the transaction attributes in the deployment descriptor. The updatePhoneNumber method of the EmployeeRecord enterprise bean is assigned the transaction attribute Mandatory; all other methods of the EmployeeRecord bean are assigned the attribute Required. All the methods of the enterprise bean AardvarkPayroll are assigned the attribute RequiresNew.


<ejb-jar>
	...
	<assembly-descriptor>
		...

		<container-transaction>
			<method>
				<ejb-name>EmployeeRecord</ejb-name>
				<method-name>*</method-name>
			</method>
			<trans-attribute>Required</trans-attribute>
		</container-transaction>

		<container-transaction>
			<method>
				<ejb-name>EmployeeRecord</ejb-name>
				<method-name>updatePhoneNumber</method-name>
			</method>
			<trans-attribute>Mandatory</trans-attribute>
		</container-transaction>

		<container-transaction>
			<method>
				<ejb-name>AardvarkPayroll</ejb-name>
				<method-name>*</method-name>
			</method>
			<trans-attribute>RequiresNew</trans-attribute>
		</container-transaction>

	</assembly-descriptor>
</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