code: @Override
      public Object getObjectInstance(JavaColonNamespace namespace, String name) throws NamingException {
  
          // If we have a service reference we know it's safe to return a reference
          if (userTranSvcRef != null) {
              if (JavaColonNamespace.COMP.equals(namespace) && "UserTransaction".equals(name)) {
                  return getUserTransaction(false, null);
              }
          }
          if (JavaColonNamespace.COMP.equals(namespace) && "TransactionSynchronizationRegistry".equals(name)) {
              return EmbeddableTransactionSynchronizationRegistryFactory.getTransactionSynchronizationRegistry();
          }
          if (JavaColonNamespace.COMP_WS.equals(namespace) && "UOWManager".equals(name)) {
              return UOWManagerFactory.getUOWManager();
          }
          return null;
      }
docs: {@inheritDoc}