remm        2004/01/27 04:01:31

  Modified:    catalina/src/share/org/apache/catalina/core
                        NamingContextListener.java
  Log:
  - Add support for liking to user transactions.
  - Bug 26414, submitted by Robert Krüger.
  
  Revision  Changes    Path
  1.5       +12 -5     
jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/NamingContextListener.java
  
  Index: NamingContextListener.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/NamingContextListener.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- NamingContextListener.java        2 Sep 2003 21:22:04 -0000       1.4
  +++ NamingContextListener.java        27 Jan 2004 12:01:20 -0000      1.5
  @@ -71,6 +71,7 @@
   import java.util.Hashtable;
   import java.util.StringTokenizer;
   
  +import javax.naming.NameAlreadyBoundException;
   import javax.naming.NamingException;
   import javax.naming.Reference;
   import javax.naming.StringRefAddr;
  @@ -748,6 +749,9 @@
                   compCtx.bind("UserTransaction", ref);
                   addAdditionalParameters
                       (namingResources, ref, "UserTransaction");
  +            } catch (NameAlreadyBoundException e) {
  +                // Ignore because UserTransaction was obviously 
  +                // added via ResourceLink
               } catch (NamingException e) {
                   log(sm.getString("naming.bindFailed", e));
               }
  @@ -938,11 +942,14 @@
           // Adding the additional parameters, if any
           addAdditionalParameters(resourceLink.getNamingResources(), ref, 
                                   resourceLink.getName());
  +        javax.naming.Context ctx = 
  +            "UserTransaction".equals(resourceLink.getName()) 
  +            ? compCtx : envCtx;
           try {
               if (debug >= 2)
                   log("  Adding resource link " + resourceLink.getName());
               createSubcontexts(envCtx, resourceLink.getName());
  -            envCtx.bind(resourceLink.getName(), ref);
  +            ctx.bind(resourceLink.getName(), ref);
           } catch (NamingException e) {
               log(sm.getString("naming.bindFailed", e));
           }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to