Query on LSA (7.1) Quiz - Distributed Transactions - Service Rules
Which of the following statements is least accurate about distributed transactions with PRPC? (Choose One)
1. No distributed transaction can be handled when running PRPC as a web application.
2. Only 3 service rules can participate in a distributed transaction.
3. A “Commit” is handled similarly in PRPC WAR deployment as in the EAR deployment with non-XA database driver.
4. By default, all connector rules are configured to participate in a bean-managed transaction. (Correct Answer)
In the above question, w.r.t. option 2, we can configure as many service rules as possible as they are nothing but methods defined in ejb-jar.xml file right? Thanks in advance.
I have a query, regarding option one which states "No distributed transaction can be handled when running PRPC as a web application", we know that there are two kinds of distributed transactions i.e. CMT & BMT,
when PRPC runs as web application (war implementation) it cannot use JTA hence it cannot even use BMT, but if it is deployed as ear implementation it can use BMT. Is my understanding correct?
For me, JTA is for BMT i.e. you make explicit call to beginTransaction and commit/rollback.
I think when PRPC starts a Servlet session from browser, it must have managed the transaction explicitly.
With CMT, the transaction demacration is in DD (Deployment Descriptor e.g. NEW, REQUIRED, SUPPORT etc.) and threads are also managed my App Server container.
So, your threads settings (e.g. threadpoolsize, maxrequestorchildren) and will not be relevant since each application server will have its own mechanism to manage the threads (e.g. WAS provides a concept of Work manager to manage threads)