[jboss-cvs] JBossAS SVN: r111739 - in projects/ejb3/tags: jboss-ejb3-transactions-1.0.4 and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sun Jul 10 13:03:28 EDT 2011
Author: jaikiran
Date: 2011-07-10 13:03:28 -0400 (Sun, 10 Jul 2011)
New Revision: 111739
Added:
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/pom.xml
Removed:
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/pom.xml
Modified:
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.classpath
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.settings/org.eclipse.jdt.core.prefs
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.settings/org.maven.ide.eclipse.prefs
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/BMTInterceptor.java
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/StatefulBMTInterceptor.java
projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/StatelessBMTInterceptor.java
Log:
[maven-release-plugin] copy for tag jboss-ejb3-transactions-1.0.4
Modified: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.classpath
===================================================================
--- projects/ejb3/trunk/transactions/.classpath 2011-07-08 20:12:46 UTC (rev 111737)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.classpath 2011-07-10 17:03:28 UTC (rev 111739)
@@ -1,8 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src/main/java"/>
- <classpathentry kind="src" path="src/test/java" output="eclipse-target/tests-classes"/>
- <classpathentry kind="src" path="src/test/resources" output="eclipse-target/tests-classes" excluding="**/*.java"/>
- <classpathentry kind="output" path="eclipse-target/classes"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
-</classpath>
\ No newline at end of file
+ <classpathentry kind="src" output="target/classes" path="src/main/java"/>
+ <classpathentry kind="src" output="target/tests-classes" path="src/test/java"/>
+ <classpathentry excluding="**" kind="src" output="target/tests-classes" path="src/test/resources"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
Modified: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- projects/ejb3/trunk/transactions/.settings/org.eclipse.jdt.core.prefs 2011-07-08 20:12:46 UTC (rev 111737)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.settings/org.eclipse.jdt.core.prefs 2011-07-10 17:03:28 UTC (rev 111739)
@@ -1,5 +1,6 @@
-#Wed Nov 12 20:11:41 GMT-05:00 2008
+#Thu Jun 17 19:52:45 IST 2010
+eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
Modified: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.settings/org.maven.ide.eclipse.prefs
===================================================================
--- projects/ejb3/trunk/transactions/.settings/org.maven.ide.eclipse.prefs 2011-07-08 20:12:46 UTC (rev 111737)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/.settings/org.maven.ide.eclipse.prefs 2011-07-10 17:03:28 UTC (rev 111739)
@@ -1,8 +1,9 @@
-#Tue Nov 25 12:07:18 CET 2008
-activeProfiles=eclipse
+#Thu Jun 17 19:52:39 IST 2010
+activeProfiles=
eclipse.preferences.version=1
-fullBuildGoals=
+fullBuildGoals=process-test-resources
includeModules=false
resolveWorkspaceProjects=true
-resourceFilterGoals=
+resourceFilterGoals=process-resources resources\:testResources
+skipCompilerPlugin=true
version=1
Deleted: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/pom.xml
===================================================================
--- projects/ejb3/trunk/transactions/pom.xml 2011-07-08 20:12:46 UTC (rev 111737)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/pom.xml 2011-07-10 17:03:28 UTC (rev 111739)
@@ -1,214 +0,0 @@
-<!--
- vi:ts=2:sw=2:expandtab
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.ejb3</groupId>
- <artifactId>jboss-ejb3-build</artifactId>
- <version>1.0.13</version>
- <relativePath>../build/pom.xml</relativePath>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>jboss-ejb3-transactions</artifactId>
- <version>1.0.4-SNAPSHOT</version>
- <packaging>jar</packaging>
- <name>JBoss EJB 3.0 Transactions</name>
- <url>http://www.jboss.org</url>
- <description>
- The JBoss EJB 3 Transactions component implements all functionality
- specified in Chapter 13 (Support for Transactions) of the EJB 3.0
- specification.
- </description>
-
- <properties>
- <version.org.jboss.deployers>2.2.0.M2</version.org.jboss.deployers>
- <version.org.jboss.aop>2.1.1.GA</version.org.jboss.aop>
- <version.org.jboss.microcontainer>2.2.0.M1</version.org.jboss.microcontainer>
- </properties>
-
-
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <version>2.2.0.M2</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-kernel</artifactId>
- <version>${version.org.jboss.microcontainer}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- <version>2.2.11.GA</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- <version>2.0.2.GA</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossxb</artifactId>
- <version>2.0.1.CR2</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.aop</groupId>
- <artifactId>jboss-aop</artifactId>
- <version>${version.org.jboss.aop}</version>
- </dependency>
-
- </dependencies>
- </dependencyManagement>
-
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.aspects</groupId>
- <artifactId>jboss-transaction-aspects</artifactId>
- <version>1.0.0.GA</version>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-transaction-spi</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs</artifactId>
- <version>${version.org.jboss.deployers}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs-spi</artifactId>
- <version>${version.org.jboss.deployers}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.aop</groupId>
- <artifactId>jboss-aop-deployers</artifactId>
- <version>${version.org.jboss.aop}</version>
- <scope>test</scope>
-
- <exclusions>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-test</artifactId>
- </exclusion>
-
- <exclusion>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-system-jmx</artifactId>
- </exclusion>
- </exclusions>
-
- </dependency>
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-aop-mc-int</artifactId>
- <version>${version.org.jboss.microcontainer}</version>
-
- </dependency>
- <dependency>
- <groupId>org.jboss.ejb3</groupId>
- <artifactId>jboss-ejb3-cache</artifactId>
- <version>1.0.0</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.ejb3</groupId>
- <artifactId>jboss-ejb3-ext-api-impl</artifactId>
- <version>1.0.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.ejb3</groupId>
- <artifactId>jboss-ejb3-interceptors</artifactId>
- <version>${version.org.jboss.ejb3.jboss-ejb3-interceptors}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.integration</groupId>
- <artifactId>jboss-transaction-spi</artifactId>
- <version>5.0.3.GA</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.javaee</groupId>
- <artifactId>jboss-ejb-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging-spi</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging-log4j</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.naming</groupId>
- <artifactId>jnpserver</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.metadata</groupId>
- <artifactId>jboss-metadata</artifactId>
- </dependency>
- <dependency>
- <groupId>jboss.jbossts</groupId>
- <artifactId>jbossjta</artifactId>
- <version>4.3.0.GA</version>
- <scope>test</scope>
- </dependency>
-
- <!-- For Eclipse Maven 2 Plugin -->
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- <scope>test</scope>
- </dependency>
-
- <!-- For Arjuna / JBoss Transaction -->
- <dependency>
- <groupId>apache-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>1.1.0.jboss</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>oswego-concurrent</groupId>
- <artifactId>concurrent</artifactId>
- <version>1.3.4-jboss-update1</version>
- </dependency>
- <dependency>
- <groupId>jboss.jbossts</groupId>
- <artifactId>jbossts-common</artifactId>
- <version>4.3.0.GA</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <profiles>
- <profile>
- <id>default</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
- <properties>
- <version.org.jboss.ejb3.jboss-ejb3-interceptors>1.0.0</version.org.jboss.ejb3.jboss-ejb3-interceptors>
- </properties>
- </profile>
- <profile>
- <id>CI</id>
- <properties>
- <version.org.jboss.ejb3.jboss-ejb3-interceptors>[0,)</version.org.jboss.ejb3.jboss-ejb3-interceptors>
- </properties>
- </profile>
- </profiles>
-</project>
Copied: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/pom.xml (from rev 111738, projects/ejb3/trunk/transactions/pom.xml)
===================================================================
--- projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/pom.xml (rev 0)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/pom.xml 2011-07-10 17:03:28 UTC (rev 111739)
@@ -0,0 +1,220 @@
+<!--
+ vi:ts=2:sw=2:expandtab
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-build</artifactId>
+ <version>1.0.13</version>
+ <relativePath>../build/pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>jboss-ejb3-transactions</artifactId>
+ <version>1.0.4</version>
+ <packaging>jar</packaging>
+ <name>JBoss EJB 3.0 Transactions</name>
+ <url>http://www.jboss.org</url>
+ <description>
+ The JBoss EJB 3 Transactions component implements all functionality
+ specified in Chapter 13 (Support for Transactions) of the EJB 3.0
+ specification.
+ </description>
+
+ <properties>
+ <version.org.jboss.deployers>2.2.0.M2</version.org.jboss.deployers>
+ <version.org.jboss.aop>2.1.1.GA</version.org.jboss.aop>
+ <version.org.jboss.microcontainer>2.2.0.M1</version.org.jboss.microcontainer>
+ </properties>
+
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <version>2.2.0.M2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ <version>${version.org.jboss.microcontainer}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ <version>2.2.11.GA</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ <version>2.0.2.GA</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossxb</artifactId>
+ <version>2.0.1.CR2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.aop</groupId>
+ <artifactId>jboss-aop</artifactId>
+ <version>${version.org.jboss.aop}</version>
+ </dependency>
+
+ </dependencies>
+ </dependencyManagement>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.aspects</groupId>
+ <artifactId>jboss-transaction-aspects</artifactId>
+ <version>1.0.0.GA</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-transaction-spi</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs</artifactId>
+ <version>${version.org.jboss.deployers}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs-spi</artifactId>
+ <version>${version.org.jboss.deployers}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.aop</groupId>
+ <artifactId>jboss-aop-deployers</artifactId>
+ <version>${version.org.jboss.aop}</version>
+ <scope>test</scope>
+
+ <exclusions>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-test</artifactId>
+ </exclusion>
+
+ <exclusion>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-system-jmx</artifactId>
+ </exclusion>
+ </exclusions>
+
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ <version>${version.org.jboss.microcontainer}</version>
+
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-cache</artifactId>
+ <version>1.0.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-ext-api-impl</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-interceptors</artifactId>
+ <version>${version.org.jboss.ejb3.jboss-ejb3-interceptors}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.integration</groupId>
+ <artifactId>jboss-transaction-spi</artifactId>
+ <version>5.0.3.GA</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.javaee</groupId>
+ <artifactId>jboss-ejb-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.logging</groupId>
+ <artifactId>jboss-logging-spi</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.logging</groupId>
+ <artifactId>jboss-logging-log4j</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.naming</groupId>
+ <artifactId>jnpserver</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.metadata</groupId>
+ <artifactId>jboss-metadata</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jboss.jbossts</groupId>
+ <artifactId>jbossjta</artifactId>
+ <version>4.3.0.GA</version>
+ <scope>test</scope>
+ </dependency>
+
+ <!-- For Eclipse Maven 2 Plugin -->
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <!-- For Arjuna / JBoss Transaction -->
+ <dependency>
+ <groupId>apache-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1.0.jboss</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>oswego-concurrent</groupId>
+ <artifactId>concurrent</artifactId>
+ <version>1.3.4-jboss-update1</version>
+ </dependency>
+ <dependency>
+ <groupId>jboss.jbossts</groupId>
+ <artifactId>jbossts-common</artifactId>
+ <version>4.3.0.GA</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <profiles>
+ <profile>
+ <id>default</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <properties>
+ <version.org.jboss.ejb3.jboss-ejb3-interceptors>1.0.0</version.org.jboss.ejb3.jboss-ejb3-interceptors>
+ </properties>
+ </profile>
+ <profile>
+ <id>CI</id>
+ <properties>
+ <version.org.jboss.ejb3.jboss-ejb3-interceptors>[0,)</version.org.jboss.ejb3.jboss-ejb3-interceptors>
+ </properties>
+ </profile>
+ </profiles>
+
+ <scm>
+ <connection>scm:svn:http://anonsvn.jboss.org/repos/jbossas/projects/ejb3/tags/jboss-ejb3-transactions-1.0.4</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/jbossas/projects/ejb3/tags/jboss-ejb3-transactions-1.0.4</developerConnection>
+ <url>http://anonsvn.jboss.org/repos/jbossas/projects/ejb3/tags/jboss-ejb3-transactions-1.0.4</url>
+ </scm>
+</project>
Modified: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/BMTInterceptor.java
===================================================================
--- projects/ejb3/trunk/transactions/src/main/java/org/jboss/ejb3/tx/BMTInterceptor.java 2011-07-08 20:12:46 UTC (rev 111737)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/BMTInterceptor.java 2011-07-10 17:03:28 UTC (rev 111739)
@@ -21,6 +21,8 @@
*/
package org.jboss.ejb3.tx;
+import javax.ejb.ApplicationException;
+import javax.ejb.EJBException;
import javax.transaction.Transaction;
import javax.transaction.TransactionManager;
@@ -31,13 +33,13 @@
* Comment
*
* @author <a href="mailto:bill at jboss.org">Bill Burke</a>
- * @author <a href="mailto:osh at sparre.dk">Ole Husgaard</a>
+ * @author <a href="mailto:osh at sparre.dk">Ole Husgaard</a>
* @version $Revision:72368 $
*/
public abstract class BMTInterceptor extends AbstractInterceptor
{
private static final Logger log = Logger.getLogger(BMTInterceptor.class);
-
+
protected final TransactionManager tm;
protected BMTInterceptor(TransactionManager tm)
@@ -46,7 +48,7 @@
}
protected abstract Object handleInvocation(Invocation invocation) throws Throwable;
-
+
public Object invoke(Invocation invocation) throws Throwable
{
Transaction oldTx = tm.suspend();
@@ -56,7 +58,40 @@
}
finally
{
- if (oldTx != null) tm.resume(oldTx);
+ if (oldTx != null)
+ {
+ tm.resume(oldTx);
+ }
}
}
+
+ /**
+ * Checks if the passed exception is an application exception. If yes, then throws back the
+ * exception as-is. Else, wraps the exception in a {@link EJBException} and throws the EJBException
+ *
+ * @param ex The exception to handle
+ * @param invocation The invocation
+ * @throws Exception Either the passed exception or an EJBException
+ */
+ protected void handleException(Invocation invocation, Exception ex) throws Exception
+ {
+ if (ex == null)
+ {
+ return;
+ }
+ ApplicationException ae = (ApplicationException) invocation.getAdvisor().resolveAnnotation(ApplicationException.class);
+ // it's an application exception, so just throw it back as-is
+ if (ae != null)
+ {
+ throw ex;
+ }
+ if (ex instanceof EJBException)
+ {
+ throw (EJBException) ex;
+ }
+ else
+ {
+ throw new EJBException(ex);
+ }
+ }
}
Modified: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/StatefulBMTInterceptor.java
===================================================================
--- projects/ejb3/trunk/transactions/src/main/java/org/jboss/ejb3/tx/StatefulBMTInterceptor.java 2011-07-08 20:12:46 UTC (rev 111737)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/StatefulBMTInterceptor.java 2011-07-10 17:03:28 UTC (rev 111739)
@@ -21,11 +21,6 @@
*/
package org.jboss.ejb3.tx;
-import javax.transaction.Status;
-import javax.transaction.SystemException;
-import javax.transaction.Transaction;
-import javax.transaction.TransactionManager;
-
import org.jboss.aop.joinpoint.Invocation;
import org.jboss.aop.util.PayloadKey;
import org.jboss.ejb3.interceptors.container.ContainerMethodInvocation;
@@ -33,6 +28,11 @@
import org.jboss.logging.Logger;
import org.jboss.tm.TxUtils;
+import javax.transaction.Status;
+import javax.transaction.SystemException;
+import javax.transaction.Transaction;
+import javax.transaction.TransactionManager;
+
/**
* EJB 3 13.6.1:
* In the case of a stateful session bean, it is possible that the business method that started a transaction
@@ -41,14 +41,14 @@
* commits or rolls back the transaction. When the client invokes the next business method, the container
* must invoke the business method (and any applicable interceptor methods for the bean) in this transac-
* tion context.
- *
+ *
* @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
* @version $Revision: $
*/
public class StatefulBMTInterceptor extends BMTInterceptor
{
private static final Logger log = Logger.getLogger(StatefulBMTInterceptor.class);
-
+
/**
* @param tm
*/
@@ -72,10 +72,10 @@
switch (status)
{
- case Status.STATUS_COMMITTING :
- case Status.STATUS_MARKED_ROLLBACK :
- case Status.STATUS_PREPARING :
- case Status.STATUS_ROLLING_BACK :
+ case Status.STATUS_COMMITTING:
+ case Status.STATUS_MARKED_ROLLBACK:
+ case Status.STATUS_PREPARING:
+ case Status.STATUS_ROLLING_BACK:
try
{
tm.rollback();
@@ -85,7 +85,7 @@
log.error("Failed to rollback", ex);
}
String msg = "BMT stateful bean '" + ejbName
- + "' did not complete user transaction properly status=" + TxUtils.getStatusAsString(status);
+ + "' did not complete user transaction properly status=" + TxUtils.getStatusAsString(status);
log.error(msg);
}
}
@@ -93,12 +93,12 @@
protected Object handleInvocation(Invocation invocation) throws Throwable
{
assert tm.getTransaction() == null : "can't handle BMT transaction, there is a transaction active";
-
+
StatefulBeanContext<?> ctx = (StatefulBeanContext<?>) ContainerMethodInvocation.getContainerMethodInvocation(invocation).getBeanContext();
String ejbName = invocation.getAdvisor().getName();
-
+
// Is the instance already associated with a transaction?
- Transaction tx = (Transaction)ctx.getMetaData().getMetaData("TX", "TX");
+ Transaction tx = (Transaction) ctx.getMetaData().getMetaData("TX", "TX");
if (tx != null)
{
ctx.getMetaData().addMetaData("TX", "TX", null, PayloadKey.TRANSIENT);
@@ -109,6 +109,10 @@
{
return invocation.invokeNext();
}
+ catch (Exception e)
+ {
+ this.handleException(invocation, e);
+ }
finally
{
checkBadStateful(ejbName);
@@ -127,5 +131,6 @@
ctx.getMetaData().addMetaData("TX", "TX", null, PayloadKey.TRANSIENT);
}
}
+ throw new Exception("Unreachable!!!");
}
}
Modified: projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/StatelessBMTInterceptor.java
===================================================================
--- projects/ejb3/trunk/transactions/src/main/java/org/jboss/ejb3/tx/StatelessBMTInterceptor.java 2011-07-08 20:12:46 UTC (rev 111737)
+++ projects/ejb3/tags/jboss-ejb3-transactions-1.0.4/src/main/java/org/jboss/ejb3/tx/StatelessBMTInterceptor.java 2011-07-10 17:03:28 UTC (rev 111739)
@@ -21,14 +21,14 @@
*/
package org.jboss.ejb3.tx;
+import org.jboss.aop.joinpoint.Invocation;
+import org.jboss.logging.Logger;
+
import javax.ejb.EJBException;
import javax.transaction.Status;
import javax.transaction.SystemException;
import javax.transaction.TransactionManager;
-import org.jboss.aop.joinpoint.Invocation;
-import org.jboss.logging.Logger;
-
/**
* EJB 3 13.6.1:
* If a stateless session bean instance starts a transaction in a business method or interceptor method, it
@@ -49,7 +49,7 @@
super(tm);
}
- private void checkStatelessDone(String ejbName, Exception ex)
+ private void checkStatelessDone(Invocation invocation, String ejbName, Exception ex) throws Exception
{
int status = Status.STATUS_NO_TRANSACTION;
@@ -83,16 +83,10 @@
+ " should complete transactions before" + " returning (ejb1.1 spec, 11.6.1)";
log.error(msg);
- // the instance interceptor will discard the instance
- if (ex != null)
- {
- if (ex instanceof EJBException)
- throw (EJBException)ex;
- else
- throw new EJBException(msg, ex);
- }
- else throw new EJBException(msg);
+ throw new EJBException(msg);
}
+ // the instance interceptor will discard the instance
+ this.handleException(invocation, ex);
}
public Object handleInvocation(Invocation invocation) throws Throwable
@@ -108,14 +102,14 @@
catch (Exception ex)
{
exceptionThrown = true;
- checkStatelessDone(ejbName, ex);
+ checkStatelessDone(invocation, ejbName, ex);
throw ex;
}
finally
{
try
{
- if (!exceptionThrown) checkStatelessDone(ejbName, null);
+ if (!exceptionThrown) checkStatelessDone(invocation, ejbName, null);
}
finally
{
More information about the jboss-cvs-commits
mailing list