KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > oracle > toplink > essentials > transaction > sunas > SunAS9TransactionController


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the "License"). You may not use this file except
5  * in compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * glassfish/bootstrap/legal/CDDLv1.0.txt or
9  * https://glassfish.dev.java.net/public/CDDLv1.0.html.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * HEADER in each file and include the License file at
15  * glassfish/bootstrap/legal/CDDLv1.0.txt. If applicable,
16  * add the following below this CDDL HEADER, with the
17  * fields enclosed by brackets "[]" replaced with your
18  * own identifying information: Portions Copyright [yyyy]
19  * [name of copyright owner]
20  */

21 // Copyright (c) 1998, 2005, Oracle. All rights reserved.
22
package oracle.toplink.essentials.transaction.sunas;
23
24 import javax.transaction.TransactionManager JavaDoc;
25 import oracle.toplink.essentials.transaction.JTATransactionController;
26
27 /**
28  * <p>
29  * <b>Purpose</b>: TransactionController implementation for OC4J JTA
30  * <p>
31  * <b>Description</b>: Implements the required behaviour for controlling JTA
32  * transactions in SunAS9. The JTA TransactionManager must be set on the instance.
33  * <p>
34  * @see oracle.toplink.essentials.transaction.JTATransactionController
35  */

36 public class SunAS9TransactionController extends JTATransactionController {
37     // Should it be "java:appserver/TransactionManager" instead?
38
// See com.sun.enterprise.naming.java.javaURLContext in GlassFish appserv-core
39
public static final String JavaDoc JNDI_TRANSACTION_MANAGER_NAME = "java:pm/TransactionManager";
40
41     public SunAS9TransactionController() {
42         super();
43     }
44
45     /**
46      * INTERNAL:
47      * Obtain and return the JTA TransactionManager on this platform
48      */

49     protected TransactionManager JavaDoc acquireTransactionManager() throws Exception JavaDoc {
50         return (TransactionManager JavaDoc)jndiLookup(JNDI_TRANSACTION_MANAGER_NAME);
51     }
52     
53     /**
54      * INTERNAL:
55      * Mark the external transaction for rollback.
56      * overriden for bug 4602524
57      **/

58     protected void markTransactionForRollback_impl() throws Exception JavaDoc {
59         getTransactionManager().getTransaction().setRollbackOnly();
60     }
61 }
62
Popular Tags