[jboss-cvs] JBossAS SVN: r75728 - in projects/ejb3/trunk/core: src/main/java/org/jboss/ejb3/proxy/factory and 3 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Jul 12 03:12:46 EDT 2008


Author: ALRubinger
Date: 2008-07-12 03:12:46 -0400 (Sat, 12 Jul 2008)
New Revision: 75728

Modified:
   projects/ejb3/trunk/core/pom.xml
   projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java
   projects/ejb3/trunk/core/src/main/resources/ejb3-interceptors-aop.xml
   projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/core/test/stateless/unit/StatelessContainerTestCase.java
   projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java
Log:
[JBMETA-68] Resolve errors in EJB3 Core due to new jboss-metadata

Modified: projects/ejb3/trunk/core/pom.xml
===================================================================
--- projects/ejb3/trunk/core/pom.xml	2008-07-12 05:37:14 UTC (rev 75727)
+++ projects/ejb3/trunk/core/pom.xml	2008-07-12 07:12:46 UTC (rev 75728)
@@ -7,7 +7,7 @@
   <parent>
     <groupId>org.jboss.ejb3</groupId>
     <artifactId>jboss-ejb3-build</artifactId>
-    <version>0.13.9</version>
+    <version>0.13.10-SNAPSHOT</version>
     <relativePath>../build/pom.xml</relativePath>
   </parent>
 
@@ -348,7 +348,7 @@
     <dependency>
       <groupId>org.jboss.ejb3</groupId>
       <artifactId>jboss-ejb3-ext-api-impl</artifactId>
-      <version>0.4</version>
+      <version>0.4.1-SNAPSHOT</version>
     </dependency>
     
     <dependency>
@@ -366,7 +366,7 @@
     <dependency>
       <groupId>org.jboss.ejb3</groupId>
       <artifactId>jboss-ejb3-test</artifactId>
-      <version>0.1.1</version>
+      <version>0.1.2-SNAPSHOT</version>
       <scope>test</scope>
     </dependency>
 

Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java	2008-07-12 05:37:14 UTC (rev 75727)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java	2008-07-12 07:12:46 UTC (rev 75728)
@@ -57,13 +57,16 @@
 import org.jboss.ejb3.annotation.impl.LocalImpl;
 import org.jboss.ejb3.annotation.impl.RemoteImpl;
 import org.jboss.ejb3.common.lang.ClassHelper;
-import org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy;
 import org.jboss.ejb3.session.SessionContainer;
 import org.jboss.ejb3.stateless.StatelessContainer;
 import org.jboss.logging.Logger;
+import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
+import org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy;
 import org.jboss.metadata.ejb.jboss.jndipolicy.spi.DefaultJndiBindingPolicy;
 import org.jboss.metadata.ejb.jboss.jndipolicy.spi.DeploymentSummary;
 import org.jboss.metadata.ejb.jboss.jndipolicy.spi.EjbDeploymentSummary;
+import org.jboss.metadata.ejb.jboss.jndipolicy.spi.JbossEnterpriseBeanJndiNameResolver;
+import org.jboss.metadata.ejb.jboss.jndipolicy.spi.JbossSessionBeanJndiNameResolver;
 
 /**
  * Comment
@@ -413,8 +416,6 @@
 
       // Initialize to defaults of remote and not home
       String jndiName = null;
-      boolean isHome = false;
-      boolean isLocal = false;
 
       // Determine if remote
       Class<?>[] remotes = ProxyFactoryHelper.getRemoteAndBusinessRemoteInterfaces(container);
@@ -452,9 +453,6 @@
                // Encountered, return
                return binding.jndiBinding();
             }
-
-            // Set home for policy
-            isHome = true;
          }
       }
 
@@ -471,10 +469,6 @@
                // Encountered, return
                return binding.jndiBinding();
             }
-
-            // Set local and home for policy
-            isHome = true;
-            isLocal = true;
          }
       }
 
@@ -491,9 +485,6 @@
                // Encountered, return
                return binding.jndiBinding();
             }
-
-            // Set local for policy
-            isLocal = true;
          }
       }
 
@@ -505,10 +496,7 @@
                + businessInterface.getName());
 
          // Set JNDI name
-         EjbDeploymentSummary summary = ProxyFactoryHelper.getDeploymentSummaryFromContainer(container);
-         summary.setHome(isHome);
-         summary.setLocal(isLocal);
-         jndiName = ProxyFactoryHelper.getJndiBindingPolicy(container).getJndiName(summary);
+         jndiName = JbossEnterpriseBeanJndiNameResolver.resolveJndiName(container.getXml(), businessInterface.getName());
       }
 
       // Return
@@ -860,9 +848,10 @@
       if (binding != null)
          return binding.jndiBinding();
 
-      // Use Default JNDI Binding Policy
-      return ProxyFactoryHelper.getJndiBindingPolicy(container).getDefaultRemoteHomeJndiName(
-            ProxyFactoryHelper.getDeploymentSummaryFromContainer(container));
+      // Use metadata
+      String jndiName = JbossSessionBeanJndiNameResolver.resolveRemoteHomeJndiName((JBossSessionBeanMetaData) container
+            .getXml());
+      return jndiName;
    }
 
    public static String getLocalHomeJndiName(EJBContainer container)
@@ -872,9 +861,10 @@
       if (binding != null)
          return binding.jndiBinding();
 
-      // Use Default JNDI Binding Policy
-      return ProxyFactoryHelper.getJndiBindingPolicy(container).getDefaultLocalHomeJndiName(
-            ProxyFactoryHelper.getDeploymentSummaryFromContainer(container));
+      // Use metadata
+      String jndiName = JbossSessionBeanJndiNameResolver.resolveLocalHomeJndiName((JBossSessionBeanMetaData) container
+            .getXml());
+      return jndiName;
    }
 
    public static String getLocalJndiName(EJBContainer container)
@@ -890,9 +880,9 @@
       // If none specified
       if (localBinding == null)
       {
-         // Get JNDI name from policy
-         String name = ProxyFactoryHelper.getJndiBindingPolicy(container).getDefaultLocalJndiName(
-               ProxyFactoryHelper.getDeploymentSummaryFromContainer(container));
+         // Get JNDI name from metadata
+         String name = JbossSessionBeanJndiNameResolver
+               .resolveLocalBusinessDefaultJndiName((JBossSessionBeanMetaData) container.getXml());
 
          // If we should check for naming conflict
          if (conflictCheck){
@@ -926,9 +916,9 @@
    {
       if (container.getAnnotation(Local.class) != null)
       {
-         EjbDeploymentSummary summary = ProxyFactoryHelper.getDeploymentSummaryFromContainer(container);
-         String localJndiName = ProxyFactoryHelper.getJndiBindingPolicy(container).getDefaultLocalJndiName(summary);
-         String remoteJndiName = ProxyFactoryHelper.getJndiBindingPolicy(container).getDefaultRemoteJndiName(summary);
+         JBossSessionBeanMetaData md = (JBossSessionBeanMetaData) container.getXml();
+         String localJndiName = JbossSessionBeanJndiNameResolver.resolveLocalBusinessDefaultJndiName(md);
+         String remoteJndiName = JbossSessionBeanJndiNameResolver.resolveRemoteBusinessDefaultJndiName(md);
          String ejbName = container.getEjbName();
          if ((localJndiName.equals(remoteJndiName)))
          {
@@ -976,65 +966,60 @@
 
    public static String getDefaultRemoteBusinessJndiName(EJBContainer container)
    {
-      // Obtain JNDI Binding Policy
-      DefaultJndiBindingPolicy policy = ProxyFactoryHelper.getJndiBindingPolicy(container);
-
-      // Obtain Deployment Summary
-      EjbDeploymentSummary summary = ProxyFactoryHelper.getDeploymentSummaryFromContainer(container);
-
       // Return the policy's default remote name for this summary
-      return policy.getDefaultRemoteJndiName(summary);
+      return JbossSessionBeanJndiNameResolver.resolveRemoteBusinessDefaultJndiName((JBossSessionBeanMetaData) container
+            .getXml());
    }
 
-   /**
-    * Obtains the JNDI Binding Policy for the specified container
-    * 
-    * @param container
-    * @author ALR
-    * @return
-    */
-   private static DefaultJndiBindingPolicy getJndiBindingPolicy(EJBContainer container)
-   {
-      // Attempt to obtain the binding policy from annotation repo
-      JndiBindingPolicy bindingPolicy = container.getAnnotation(JndiBindingPolicy.class);
+//   /**
+//    * Obtains the JNDI Binding Policy for the specified container
+//    * 
+//    * @param container
+//    * @author ALR
+//    * @return
+//    */
+//   private static DefaultJndiBindingPolicy getJndiBindingPolicy(EJBContainer container)
+//   {
+//      // Attempt to obtain the binding policy from annotation repo
+//      JndiBindingPolicy bindingPolicy = container.getAnnotation(JndiBindingPolicy.class);
+//
+//      // Initialize
+//      Class<? extends DefaultJndiBindingPolicy> policy = null;
+//      
+//      // If policy is defined
+//      if (bindingPolicy != null){
+//         // Use it
+//         policy = bindingPolicy.policy();
+//      }
+//      // No policy defined
+//      else
+//      {
+//         // Use default policy
+//         Class<? extends DefaultJndiBindingPolicy> policyClass = BasicJndiBindingPolicy.class;
+//         // Log warning
+//         log.warn("No default JNDI Binding Policy Defined (see ejb3-interceptors-aop.xml for example); defaulting to "
+//               + policyClass.getName());
+//         policy = policyClass;
+//      }
+//      
+//      // Log
+//      log.debug("Obtaining JNDI name from policy " + policy.getName());
+//
+//      try
+//      {
+//         // Instanciate the policy and return
+//         return policy.newInstance();
+//      }
+//      catch (InstantiationException e)
+//      {
+//         throw new RuntimeException("Could not instanciate JNDI Binding Policy: " + policy.getName(), e);
+//      }
+//      catch (IllegalAccessException e)
+//      {
+//         throw new RuntimeException(e);
+//      }
+//   }
 
-      // Initialize
-      Class<? extends DefaultJndiBindingPolicy> policy = null;
-      
-      // If policy is defined
-      if (bindingPolicy != null){
-         // Use it
-         policy = bindingPolicy.policy();
-      }
-      // No policy defined
-      else
-      {
-         // Use default policy
-         Class<? extends DefaultJndiBindingPolicy> policyClass = PackagingBasedJndiBindingPolicy.class;
-         // Log warning
-         log.warn("No default JNDI Binding Policy Defined (see ejb3-interceptors-aop.xml for example); defaulting to "
-               + policyClass.getName());
-         policy = policyClass;
-      }
-      
-      // Log
-      log.debug("Obtaining JNDI name from policy " + policy.getName());
-
-      try
-      {
-         // Instanciate the policy and return
-         return policy.newInstance();
-      }
-      catch (InstantiationException e)
-      {
-         throw new RuntimeException("Could not instanciate JNDI Binding Policy: " + policy.getName(), e);
-      }
-      catch (IllegalAccessException e)
-      {
-         throw new RuntimeException(e);
-      }
-   }
-
    private static EjbDeploymentSummary getDeploymentSummaryFromContainer(EJBContainer container)
    {
       // Construct Deployment Summary

Modified: projects/ejb3/trunk/core/src/main/resources/ejb3-interceptors-aop.xml
===================================================================
--- projects/ejb3/trunk/core/src/main/resources/ejb3-interceptors-aop.xml	2008-07-12 05:37:14 UTC (rev 75727)
+++ projects/ejb3/trunk/core/src/main/resources/ejb3-interceptors-aop.xml	2008-07-12 07:12:46 UTC (rev 75728)
@@ -177,7 +177,7 @@
          @org.jboss.ejb3.annotation.Pool (value="ThreadlocalPool", maxSize=30, timeout=10000)
       </annotation>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
    </domain>
 
@@ -210,7 +210,7 @@
          @org.jboss.ejb3.annotation.Pool (value="ThreadlocalPool", maxSize=30, timeout=10000)
       </annotation>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
    </domain>
 
@@ -262,7 +262,7 @@
          @org.jboss.ejb3.annotation.Pool (value="ThreadlocalPool", maxSize=30, timeout=10000)
       </annotation>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
    </domain>
 
@@ -331,7 +331,7 @@
          @org.jboss.ejb3.annotation.Pool (value="ThreadlocalPool", maxSize=30, timeout=10000)
       </annotation>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
 
       <!-- NON Clustered cache configuration -->
@@ -360,7 +360,7 @@
          @org.jboss.ejb3.annotation.Cache ("NoPassivationCache")
       </annotation>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
 
    </domain>
@@ -384,7 +384,7 @@
          @org.jboss.ejb3.annotation.Pool (value="StrictMaxPool", maxSize=15, timeout=10000)
       </annotation>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
    </domain>
 
@@ -410,7 +410,7 @@
          @org.jboss.ejb3.annotation.Pool (value="StrictMaxPool", maxSize=15, timeout=10000)
       </annotation>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
    </domain>
 
@@ -440,7 +440,7 @@
          <stack-ref name="EJBInterceptors"/>
       </bind>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
    </domain>
 
@@ -470,7 +470,7 @@
          <stack-ref name="EJBInterceptors"/>
       </bind>
       <annotation expr="!class(@org.jboss.ejb3.annotation.JndiBindingPolicy)">
-         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy.class)
+         @org.jboss.ejb3.annotation.JndiBindingPolicy (policy=org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy.class)
       </annotation>
    </domain>
 

Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/core/test/stateless/unit/StatelessContainerTestCase.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/core/test/stateless/unit/StatelessContainerTestCase.java	2008-07-12 05:37:14 UTC (rev 75727)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/core/test/stateless/unit/StatelessContainerTestCase.java	2008-07-12 07:12:46 UTC (rev 75728)
@@ -23,6 +23,7 @@
 
 import static org.junit.Assert.assertEquals;
 
+import java.util.Enumeration;
 import java.util.Hashtable;
 
 import javax.naming.InitialContext;
@@ -74,7 +75,11 @@
       
       InitialContext ctx = new InitialContext();
       System.out.println("ctx = " + ctx);
-      //System.out.println("  " + container.getInitialContext().list("MyStatelessBean").next());
+      Enumeration<?> i = container.getInitialContext().list("MyStatelessBean");
+      while(i.hasMoreElements())
+      {
+         System.out.println("  " + i.nextElement());   
+      }
       MyStateless bean = (MyStateless) ctx.lookup("MyStatelessBean/local");
       
       String actual = bean.sayHi("Me");

Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java	2008-07-12 05:37:14 UTC (rev 75727)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java	2008-07-12 07:12:46 UTC (rev 75728)
@@ -30,6 +30,8 @@
 import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeansMetaData;
 import org.jboss.metadata.ejb.jboss.JBossMetaData;
 import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
+import org.jboss.metadata.ejb.jboss.jndipolicy.plugins.BasicJndiBindingPolicy;
+import org.jboss.metadata.ejb.jboss.jndipolicy.plugins.JBossSessionPolicyDecorator;
 
 /**
  * Comment
@@ -62,6 +64,7 @@
       metaData.setAssemblyDescriptor(new JBossAssemblyDescriptorMetaData());
       JBossSessionBeanMetaData sessionBeanMetaData = new JBossSessionBeanMetaData();
       sessionBeanMetaData.setEnterpriseBeansMetaData(enterpriseBeans);
+      sessionBeanMetaData = new JBossSessionPolicyDecorator(sessionBeanMetaData, new BasicJndiBindingPolicy());
       return sessionBeanMetaData;
    }
 }




More information about the jboss-cvs-commits mailing list