user manual
Chapter 19: Transaction management 201
Transaction manager services
beans that have ejb.transactionManagerInstanceName set go to the (non-default)
OTS engine. Other beans in the Partition that require method invocation in a
transaction, but do not require 2PC, always find the Transaction Manager due
to local service affinity.
Following is a deployment configuration usage example. Displayed below is
an extract from deployment descriptor ejb-borland.xml packaged with the
deployed EJB module and viewable in the DDEditor. The
ejb.transactionManagerInstanceName property is set for Session bean
"OrderSesEJB" where OrderSesEJB takes orders from customers, creates an order
in the database and sends messages to the manufacturers for making parts.
<ejb-jar>
<enterprise-beans>
<session>
<ejb-name>OrderSesEJB</ejb-name>
<bean-home-name>OrderSes</bean-home-name>
<bean-local-home-name />
<ejb-local-ref>
<ejb-ref-name>ejb/OrderEntLocal</ejb-ref-name>
<jndi-name>OrderEntLocal</jndi-name>
</ejb-local-ref>
<ejb-local-ref>
<ejb-ref-name>ejb/ItemEntLocal</ejb-ref-name>
</ejb-local-ref>
<resource-ref>
<res-ref-name>jms/QueueConnectionFactory</res-ref-name>
<jndi-name>serial://QueueConnectionFactory</jndi-name>
</resource-ref>
<resource-env-ref>
<resource-env-ref-name>jms/OrderQueue</resource-env-ref-
name>
<jndi-name>serial://OrderQueue</jndi-name>
</resource-env-ref>
<property>
<prop-name>ejb.transactionManagerInstanceName</prop-name>
<prop-type>String</prop-type>
<prop-value>TwoPhaseEngine</prop-value>
</property>
</session>
<ejb-jar>
Example runtime scenarios
The following diagrams show configurations where the standard Transaction
Manager and the OTS engine co-exist. The deployment configuration is done
in a manner in which the beans participating in 2PC transactions have their
transaction management done by the OTS engine, named "TwoPhaseEngine",
and those that don't need 2PC transactions use the default in- process
Transaction Manager.










