[jboss-cvs] JBossAS SVN: r66166 - in projects/metadata/trunk/src: test/java/org/jboss/test/metadata/ejb and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Oct 16 04:35:28 EDT 2007


Author: wolfc
Date: 2007-10-16 04:35:28 -0400 (Tue, 16 Oct 2007)
New Revision: 66166

Added:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossGenericBeanMetaData.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testEjbthree936.xml
Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java
Log:
JBAS-4506: add support for unknown bean type

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java	2007-10-16 07:55:00 UTC (rev 66165)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java	2007-10-16 08:35:28 UTC (rev 66166)
@@ -80,7 +80,8 @@
       particles={
             @JBossXmlModelGroup.Particle(element=@XmlElement(name="session"), type=JBossSessionBeanMetaData.class),
             @JBossXmlModelGroup.Particle(element=@XmlElement(name="entity"), type=JBossEntityBeanMetaData.class),
-            @JBossXmlModelGroup.Particle(element=@XmlElement(name="message-driven"), type=JBossMessageDrivenBeanMetaData.class)})
+            @JBossXmlModelGroup.Particle(element=@XmlElement(name="message-driven"), type=JBossMessageDrivenBeanMetaData.class),
+            @JBossXmlModelGroup.Particle(element=@XmlElement(name="ejb"), type=JBossGenericBeanMetaData.class)})
 public abstract class JBossEnterpriseBeanMetaData extends NamedMetaDataWithDescriptionGroupWithOverride<EnterpriseBeanMetaData> implements Environment
 {
    /** The serialVersionUID */

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossGenericBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossGenericBeanMetaData.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossGenericBeanMetaData.java	2007-10-16 08:35:28 UTC (rev 66166)
@@ -0,0 +1,58 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.metadata.ejb.jboss;
+
+import javax.xml.bind.annotation.XmlType;
+
+/**
+ * Allow for the specification of an unknown bean type in the deployment
+ * descriptor (EJBTHREE-936).
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+ at XmlType(name="jboss-generic-beanType")
+public class JBossGenericBeanMetaData extends JBossEnterpriseBeanMetaData
+{
+   private static final long serialVersionUID = 1L;
+
+   /* (non-Javadoc)
+    * @see org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData#getDefaultConfigurationName()
+    */
+   @Override
+   public String getDefaultConfigurationName()
+   {
+      // TODO Auto-generated method stub
+      return null;
+   }
+
+   /* (non-Javadoc)
+    * @see org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData#getDefaultInvokerName()
+    */
+   @Override
+   protected String getDefaultInvokerName()
+   {
+      // TODO Auto-generated method stub
+      return null;
+   }
+
+}


Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossGenericBeanMetaData.java
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java	2007-10-16 07:55:00 UTC (rev 66165)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java	2007-10-16 08:35:28 UTC (rev 66166)
@@ -22,7 +22,6 @@
 package org.jboss.test.metadata.ejb;
 
 import java.util.Iterator;
-import java.util.Set;
 
 import junit.framework.Test;
 
@@ -38,12 +37,17 @@
 import org.jboss.metadata.ejb.jboss.JBoss50MetaData;
 import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
 import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeansMetaData;
+import org.jboss.metadata.ejb.jboss.JBossGenericBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanMetaData;
 import org.jboss.metadata.ejb.jboss.JBossMetaData;
 import org.jboss.metadata.ejb.jboss.JBossMetaDataWrapper;
 import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
 import org.jboss.metadata.ejb.spec.EjbJar20MetaData;
 import org.jboss.metadata.ejb.spec.EjbJar21MetaData;
+import org.jboss.metadata.ejb.spec.EjbJar30MetaData;
 import org.jboss.metadata.ejb.spec.EjbJarMetaData;
+import org.jboss.metadata.ejb.spec.EnterpriseBeansMetaData;
+import org.jboss.metadata.ejb.spec.SessionBeanMetaData;
 import org.jboss.test.metadata.javaee.AbstractJavaEEMetaDataTest;
 import org.jboss.test.metadata.javaee.JBossXBTestDelegate;
 import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
@@ -96,6 +100,26 @@
    }
    
    /**
+    * EJBTHREE-936: allow for an unknown bean type
+    */
+   public void testEjbthree936() throws Exception
+   {
+      // normally from the annotation scanner
+      EjbJar30MetaData ejbJar = new EjbJar30MetaData();
+      ejbJar.setEnterpriseBeans(new EnterpriseBeansMetaData());
+      SessionBeanMetaData sessionBean = new SessionBeanMetaData();
+      sessionBean.setEjbName("MyStatelessBean");
+      ejbJar.getEnterpriseBeans().add(sessionBean);
+      
+      JBossMetaData result = unmarshal();
+      result.setOverridenMetaData(ejbJar);
+      
+      assertEquals(1, result.getMergedEnterpriseBeans().size());
+      JBossGenericBeanMetaData bean = (JBossGenericBeanMetaData) result.getEnterpriseBean("MyStatelessBean");
+      System.out.println(bean.getResourceReferences());
+   }
+   
+   /**
     * A simple test coming from ejb3 naming unit test.
     * 
     * @throws Exception
@@ -182,7 +206,7 @@
             InvokerProxyBindingMetaData ipbmd = bindings.get(invoker.getName());
             assertNotNull(invoker.getName(), ipbmd);
          }
-      }
+   }
 
       // Test the legacy wrapper view
       ApplicationMetaData appMetaData = new ApplicationMetaData(wrapper);

Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testEjbthree936.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testEjbthree936.xml	                        (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testEjbthree936.xml	2007-10-16 08:35:28 UTC (rev 66166)
@@ -0,0 +1,16 @@
+<jboss
+        xmlns="http://www.jboss.com/xml/ns/javaee"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
+                            http://www.jboss.org/j2ee/schema/jboss_5_0.xsd"
+        version="3.0">
+   <enterprise-beans>
+      <ejb>
+         <ejb-name>MyStatelessBean</ejb-name>
+         <resource-ref>
+         	<res-ref-name>qFactory</res-ref-name>
+         	<jndi-name>ConnectionFactory</jndi-name>
+         </resource-ref>
+      </ejb>
+   </enterprise-beans>
+</jboss>


Property changes on: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testEjbthree936.xml
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native




More information about the jboss-cvs-commits mailing list