EJB 3.0 jboss 4.0.4 Transaktion erzeugt keinen Timeout

mongole

Grünschnabel
Hi,

Um das Timeoutverhalten von Transaktionen von EJBs zu testen hab ich einen JUnit test geschrieben, der Methodenaufrufe mit und ohne Zeitüberschreitung des TransactionTimeouts überprüft.

Das standard TransactionTimeout ist im jta-service.xml (im deploy Verzeichnis) eingestellt:
Code:
<server>
   <!-- ==================================================================== -->
   <!-- Transactions                                                         -->
   <!-- ==================================================================== -->
   <!-- The configurable Xid factory.  For use with Oracle, set pad to true -->
   <mbean code="org.jboss.tm.XidFactory"
      name="jboss:service=XidFactory">
      <!--attribute name="Pad">true</attribute-->
   </mbean>

   <!--
      | The fast in-memory transaction manager.
    -->
   <mbean code="org.jboss.tm.TransactionManagerService"
      name="jboss:service=TransactionManager"
      xmbean-dd="resource:xmdesc/TransactionManagerService-xmbean.xml">
      <attribute name="TransactionTimeout">1000</attribute>
      <!-- set to false to disable transaction demarcation over IIOP -->
      <attribute name="GlobalIdsEnabled">true</attribute>
      <depends optional-attribute-name="XidFactory">jboss:service=XidFactory</depends>
      <depends>jboss:service=Naming</depends>
   </mbean>
</server>

Der unit Test ruft nun zwei mal eine Methode einer EJB auf, die eine stored procedure mit einem parameterisierbaren sleep in einer Oracle Datenbank aufruft. Die Aufrufe haben je unter und über den eingestellten 1000 Sekunden Ausführungszeit in der Datenbank. Beide haben keine Timeout. Aber eigentlich müßte die Methode die länger als 1000 Sekunden braucht, doch eine TimoutException auslösen!

Ich hab den kompletten Verzeichnisbaum unter jboss4.0.4/server/default durchsucht und mit grep keinen zweiten Eintrag mit TransactionTimeout gefunden.

Hat vieleicht wer eine Idee woran das liegen könnte?

lg,
monogle
 
Zurück