[jboss-cvs] JBossAS SVN: r66237 - in projects/metadata/trunk/src: main/java/org/jboss/metadata/ejb/spec and 4 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Oct 18 09:48:55 EDT 2007


Author: wolfc
Date: 2007-10-18 09:48:54 -0400 (Thu, 18 Oct 2007)
New Revision: 66237

Added:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/EmbeddedSessionBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossServiceBeanMetaData.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testService.xml
Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/spec/SecurityIdentityMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceEnvironmentReferenceMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionTargetMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/RunAsMetaData.java
   projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java
Log:
EJBTHREE-1067: added service bean

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/EmbeddedSessionBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/EmbeddedSessionBeanMetaData.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/EmbeddedSessionBeanMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -0,0 +1,44 @@
+/*
+ * 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.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.metadata.ejb.spec.SessionBeanMetaData;
+import org.jboss.metadata.javaee.spec.EnvironmentRefsGroupMetaData;
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.xb.annotations.JBossXmlAdaptedType;
+import org.jboss.xb.annotations.JBossXmlModelGroup;
+
+/**
+ * Comment
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+ at JBossXmlModelGroup(name="embeddedSessionBean",
+      propOrder={"descriptionGroup", "ejbClass", "businessLocals", "businessRemotes", "jndiEnvironmentRefsGroup"})
+public class EmbeddedSessionBeanMetaData extends SessionBeanMetaData
+{
+   private static final long serialVersionUID = 1L;
+}


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

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-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -81,7 +81,8 @@
             @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="ejb"), type=JBossGenericBeanMetaData.class)})
+            @JBossXmlModelGroup.Particle(element=@XmlElement(name="ejb"), type=JBossGenericBeanMetaData.class),
+            @JBossXmlModelGroup.Particle(element=@XmlElement(name="service"), type=JBossServiceBeanMetaData.class)})
 public abstract class JBossEnterpriseBeanMetaData extends NamedMetaDataWithDescriptionGroupWithOverride<EnterpriseBeanMetaData> implements Environment
 {
    /** The serialVersionUID */

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossServiceBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossServiceBeanMetaData.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossServiceBeanMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -0,0 +1,108 @@
+/*
+ * 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.XmlElement;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+import org.jboss.metadata.ejb.spec.SessionBeanMetaData;
+import org.jboss.xb.annotations.JBossXmlModelGroup;
+
+/**
+ * An EJB 3 service bean.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+ at XmlType(name="service-beanType")
+public class JBossServiceBeanMetaData extends JBossSessionBeanMetaData
+{
+   private static final long serialVersionUID = 1L;
+
+   /** The jndi name where the local proxy is bound */
+   private String localJndiName;
+   
+   /** The fully qualified class name for the JMX Management interface */
+   private String management;
+   
+   /** The object name under which the management interface is registered into JMX */
+   private String objectName;
+   
+   /** The resource url for xmbean metadata */
+   private String xmBean;
+   
+   public String getLocalJndiName()
+   {
+      return localJndiName;
+   }
+   
+   public String getManagement()
+   {
+      return management;
+   }
+   
+   public String getObjectName()
+   {
+      return objectName;
+   }
+   
+   public String getXmbean()
+   {
+      return xmBean;
+   }
+   
+   public void setLocalJndiName(String localJndiName)
+   {
+      this.localJndiName = localJndiName;
+   }
+   
+   public void setManagement(String management)
+   {
+      this.management = management;
+   }
+   
+   public void setObjectName(String objectName)
+   {
+      this.objectName = objectName;
+   }
+   
+   public void setXmbean(String xmBean)
+   {
+      this.xmBean = xmBean;
+   }
+   
+   //
+   
+   private EmbeddedSessionBeanMetaData embedded;
+   
+   public EmbeddedSessionBeanMetaData getEmbedded()
+   {
+      return embedded;
+   }
+   
+   public void setEmbedded(EmbeddedSessionBeanMetaData embedded)
+   {
+      this.embedded = embedded;
+   }
+}


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

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/spec/SecurityIdentityMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/spec/SecurityIdentityMetaData.java	2007-10-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/spec/SecurityIdentityMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -25,6 +25,8 @@
 import org.jboss.metadata.javaee.spec.RunAsMetaData;
 import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptions;
 import org.jboss.metadata.javaee.support.MergeableMetaData;
+import org.jboss.xb.annotations.JBossXmlNsPrefix;
+
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
 
@@ -105,6 +107,7 @@
     * @throws IllegalArgumentException for a null runAs
     */
    @XmlElement(required=false)
+   //@JBossXmlNsPrefix(prefix="jee")
    public void setRunAs(RunAsMetaData runAs)
    {
       if (runAs == null)

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceEnvironmentReferenceMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceEnvironmentReferenceMetaData.java	2007-10-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceEnvironmentReferenceMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -26,6 +26,7 @@
 
 import org.jboss.metadata.javaee.support.MergeableMappedMetaData;
 import org.jboss.metadata.javaee.support.ResourceInjectionMetaDataWithDescriptions;
+import org.jboss.xb.annotations.JBossXmlNsPrefix;
 
 /**
  * ResourceEnvironmentReferenceMetaData.
@@ -66,6 +67,7 @@
     * @param resourceEnvRefName the resourceEnvRefName.
     * @throws IllegalArgumentException for a null resourceEnvRefName
     */
+   //@JBossXmlNsPrefix(prefix="jee")
    public void setResourceEnvRefName(String resourceEnvRefName)
    {
       setName(resourceEnvRefName);
@@ -88,6 +90,7 @@
     * @throws IllegalArgumentException for a null type
     */
    @XmlElement(name="resource-env-ref-type")
+   //@JBossXmlNsPrefix(prefix="jee")
    public void setType(String type)
    {
       if (type == null)

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionMetaData.java	2007-10-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -27,6 +27,7 @@
 
 import org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData;
 import org.jboss.metadata.javaee.support.NamedMetaData;
+import org.jboss.xb.annotations.JBossXmlNsPrefix;
 
 /**
  * ResourceInjectionMetaData.
@@ -97,6 +98,7 @@
     */
    //@SchemaProperty(mandatory=false)
    @XmlElement(required=false)
+   //@JBossXmlNsPrefix(prefix="jee", schemaTargetIfNotMapped=true)
    public void setMappedName(String mappedName)
    {
       if (mappedName == null)
@@ -122,6 +124,7 @@
     */
    //@SchemaProperty(name="injection-target", impl=NonNullLinkedHashSet.class, mandatory=false)
    @XmlElement(name="injection-target", /*type=NonNullLinkedHashSet.class,*/ required=false)
+   //@JBossXmlNsPrefix(prefix="jee", schemaTargetIfNotMapped=true)
    public void setInjectionTargets(Set<ResourceInjectionTargetMetaData> injectionTargets)
    {
       if (injectionTargets == null)

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionTargetMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionTargetMetaData.java	2007-10-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceInjectionTargetMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -25,7 +25,9 @@
 
 import javax.xml.bind.annotation.XmlType;
 
+import org.jboss.xb.annotations.JBossXmlNsPrefix;
 
+
 /**
  * ResourceInjectionTargetMetaData.
  * 
@@ -69,6 +71,7 @@
     * @param injectionTargetClass the injectionTargetClass.
     * @throws IllegalArgumentException for a null injectionTargetClass
     */
+   //@JBossXmlNsPrefix(prefix="jee")
    public void setInjectionTargetClass(String injectionTargetClass)
    {
       if (injectionTargetClass == null)
@@ -92,6 +95,7 @@
     * @param injectionTargetName the injectionTargetName.
     * @throws IllegalArgumentException for a null injectionTargetName
     */
+   //@JBossXmlNsPrefix(prefix="jee")
    public void setInjectionTargetName(String injectionTargetName)
    {
       if (injectionTargetName == null)

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/RunAsMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/RunAsMetaData.java	2007-10-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/RunAsMetaData.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -24,6 +24,7 @@
 import javax.xml.bind.annotation.XmlType;
 
 import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptions;
+import org.jboss.xb.annotations.JBossXmlNsPrefix;
 
 /**
  * RunAsMetaData.
@@ -64,6 +65,7 @@
     * @param roleName the roleName.
     * @throws IllegalArgumentException for a null roleName
     */
+   //@JBossXmlNsPrefix(prefix="jee")
    public void setRoleName(String roleName)
    {
       if (roleName == null)

Modified: projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd
===================================================================
--- projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd	2007-10-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd	2007-10-18 13:48:54 UTC (rev 66237)
@@ -380,7 +380,7 @@
                <xsd:field xpath="javaee:env-entry-name"/>
             </xsd:unique>
          </xsd:element>
-         <xsd:element name="service" type="jboss:service-beanType"> </xsd:element>
+         <xsd:element name="service" type="jboss:jboss-service-beanType"> </xsd:element>
          <xsd:element name="consumer" type="jboss:consumer-beanType"> </xsd:element>
          <!-- For generic ejb -->
          <xsd:element name="ejb" type="jboss:generic-beanType"/>
@@ -668,7 +668,7 @@
 
       <xsd:sequence>
          <xsd:element name="method-name" type="javaee:method-nameType"/>
-         <xsd:element name="transaction-timeout" type="jboss:transaction-timeoutType" minOccurs="0"/>
+         <xsd:element name="transaction-timeout" type="jboss:transaction-timeoutType"/>
 
       </xsd:sequence>
       <xsd:attribute name="id" type="xsd:ID"/>
@@ -764,7 +764,7 @@
 
    <!-- **************************************************** -->
 
-   <xsd:complexType name="service-beanType">
+   <xsd:complexType name="jboss-service-beanType">
       <xsd:annotation>
          <xsd:documentation> The service element holds all of the information specific about a service
             bean which is a JBoss proprietary extension to EJB3 creating multithreaded, singleton
@@ -772,27 +772,35 @@
       </xsd:annotation>
 
       <xsd:sequence>
+         <xsd:group ref="javaee:descriptionGroup"/>
          <xsd:element name="ejb-name" type="javaee:ejb-nameType"/>
-         <xsd:element name="ejb-class" type="javaee:ejb-classType"/>
+         <xsd:element name="mapped-name" type="javaee:xsdStringType" minOccurs="0"/>
+         <!-- A service bean can't have an EJB 2.1 view -->
+         <xsd:element name="business-local"
+            type="javaee:fully-qualified-classType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <xsd:element name="business-remote"
+            type="javaee:fully-qualified-classType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <!-- TODO: service-endpoint? -->
+         <xsd:element name="ejb-class" type="javaee:ejb-classType" minOccurs="0"/>
+         <!-- Is a service bean really a session bean with a session-type? -->
+         <!-- no remove-method -->
+         <!-- TODO: transaction-type -->
+         <!-- TODO: around-invoke -->
+         <xsd:group ref="jboss:jndiEnvironmentRefsGroup"/>
+         <!-- no post-activate -->
+         <!-- no pre-passivate -->
+         <!-- TODO: security-role-ref -->
+         <xsd:element name="security-identity" type="javaee:security-identityType" minOccurs="0"/>
+         
+         <!-- JBoss extensions -->
          <xsd:element name="object-name" type="jboss:jmx-nameType" minOccurs="0"/>
-         <xsd:element name="local" type="javaee:localType" minOccurs="0"/>
-         <xsd:element name="remote" type="javaee:remoteType" minOccurs="0"/>
          <xsd:element name="management" type="jboss:managementType" minOccurs="0"/>
          <xsd:element name="xmbean" type="jboss:xmbeanType" minOccurs="0"/>
          <xsd:element name="remote-binding" type="jboss:remote-bindingType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
          <xsd:element name="local-jndi-name" type="jboss:local-jndi-nameType" minOccurs="0"/>
-         <xsd:element name="ejb-ref" type="jboss:jboss-ejb-refType" minOccurs="0"
-                      maxOccurs="unbounded"/>
-         <xsd:element name="ejb-local-ref" type="jboss:jboss-ejb-local-refType" minOccurs="0"
-                      maxOccurs="unbounded"/>
-         <xsd:element name="security-identity" type="javaee:security-identityType" minOccurs="0"/>
-         <xsd:element name="resource-ref" type="jboss:jboss-resource-refType" minOccurs="0"
-                      maxOccurs="unbounded"/>
-         <xsd:element name="resource-env-ref" type="jboss:jboss-resource-env-refType" minOccurs="0"
-                      maxOccurs="unbounded"/>
-         <xsd:element name="message-destination-ref" type="jboss:jboss-message-destination-refType"
-                      minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="security-domain" type="javaee:xsdStringType" minOccurs="0"/>
          <xsd:element name="method-attributes" type="jboss:method-attributesType" minOccurs="0"/>
          <xsd:element name="depends" type="javaee:xsdStringType" minOccurs="0" maxOccurs="unbounded"/>
@@ -1143,7 +1151,7 @@
          <xsd:documentation> The ignore-dependency element removes an injection dependency</xsd:documentation>
       </xsd:annotation>
       <xsd:sequence>
-         <xsd:element name="injection-target" type="javaee:injection-targetType"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" maxOccurs="unbounded"/>
       </xsd:sequence>
    </xsd:complexType>
 
@@ -1220,7 +1228,7 @@
             ejb-jar.xml, but you provide a jndi-name in jboss.xml Used in: entity, session,
             message-driven, consumer, and service </xsd:documentation>
       </xsd:annotation>
-
+      
       <xsd:sequence>
          <xsd:element name="description" type="javaee:descriptionType" minOccurs="0"
                       maxOccurs="unbounded"/>
@@ -1229,11 +1237,22 @@
          <xsd:element name="home" type="javaee:homeType" minOccurs="0"/>
          <xsd:element name="remote" type="javaee:remoteType" minOccurs="0"/>
          <xsd:element name="ejb-link" type="javaee:ejb-linkType" minOccurs="0"/>
-         <xsd:group ref="javaee:resourceGroup"/>
+         <xsd:group ref="jboss:resourceGroup"/>
          <xsd:element name="jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
          <xsd:element name="ignore-dependency" type="javaee:emptyType" minOccurs="0"/>
       </xsd:sequence>
       <xsd:attribute name="id" type="xsd:ID"/>
+      
+      <!-- 
+      <xsd:complexContent>
+         <xsd:extension base="javaee:ejb-refType">
+            <xsd:sequence>
+               <xsd:element name="jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
+               <xsd:element name="ignore-dependency" type="javaee:emptyType" minOccurs="0"/>
+            </xsd:sequence>
+         </xsd:extension>
+      </xsd:complexContent>
+      -->
    </xsd:complexType>
 
    <!-- **************************************************** -->
@@ -1253,8 +1272,8 @@
          <xsd:element name="local-home" type="javaee:local-homeType" minOccurs="0"/>
          <xsd:element name="local" type="javaee:localType" minOccurs="0"/>
          <xsd:element name="ejb-link" type="javaee:ejb-linkType" minOccurs="0"/>
-         <xsd:group ref="javaee:resourceGroup"/>
-         <xsd:element name="local-jndi-name" type="jboss:local-jndi-nameType" minOccurs="0"/>
+         <xsd:group ref="jboss:resourceGroup"/>
+         <xsd:element name="jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
          <xsd:element name="ignore-dependency" type="javaee:emptyType" minOccurs="0"/>
       </xsd:sequence>
       <xsd:attribute name="id" type="xsd:ID"/>
@@ -1302,25 +1321,13 @@
 
          <xsd:group ref="javaee:resourceGroup"/>
 
-         <xsd:element name="jndi-name" type="javaee:xsdStringType"/>
+         <xsd:element name="jndi-name" type="javaee:xsdStringType" minOccurs="0"/>
       </xsd:sequence>
       <xsd:attribute name="id" type="xsd:ID"/>
    </xsd:complexType>
 
    <!-- **************************************************** -->
 
-   <xsd:complexType name="message-destination-ref-nameType">
-      <xsd:annotation>
-         <xsd:documentation> The message-destination-ref-name element identifies the
-            message-destination-ref. It must match the name in ejb-jar.xml </xsd:documentation>
-      </xsd:annotation>
-      <xsd:simpleContent>
-         <xsd:restriction base="javaee:string"/>
-      </xsd:simpleContent>
-   </xsd:complexType>
-
-   <!-- **************************************************** -->
-
    <xsd:complexType name="jboss-resource-env-refType">
       <xsd:annotation>
          <xsd:documentation> The resource-env-ref element gives a mapping between the "code name" of a
@@ -1328,6 +1335,7 @@
          </xsd:documentation>
       </xsd:annotation>
 
+<!-- 
       <xsd:sequence>
          <xsd:element name="description" type="javaee:descriptionType" minOccurs="0"
                       maxOccurs="unbounded"/>
@@ -1355,21 +1363,17 @@
       </xsd:sequence>
 
       <xsd:attribute name="id" type="xsd:ID"/>
+-->
+      <xsd:complexContent>
+         <xsd:extension base="javaee:resource-env-refType">
+            <xsd:sequence>
+               <xsd:element name="jndi-name" type="javaee:jndi-nameType"/>
+            </xsd:sequence>
+         </xsd:extension>
+      </xsd:complexContent>
    </xsd:complexType>
 
    <!-- **************************************************** -->
-
-   <xsd:complexType name="resource-env-ref-nameType">
-      <xsd:annotation>
-         <xsd:documentation> The resource-env-ref-name element gives the "code name" of a resource. It
-            is provided by the Bean Developer. </xsd:documentation>
-      </xsd:annotation>
-      <xsd:simpleContent>
-         <xsd:restriction base="javaee:string"/>
-      </xsd:simpleContent>
-   </xsd:complexType>
-
-   <!-- **************************************************** -->
    <xsd:complexType name="jboss-resource-refType">
       <xsd:annotation>
          <xsd:documentation> The resource-ref element gives a mapping between the "code name" of a
@@ -1416,19 +1420,6 @@
 
    <!-- **************************************************** -->
 
-   <xsd:complexType name="res-ref-nameType">
-      <xsd:annotation>
-         <xsd:documentation> The res-ref-name element gives the "code name" of a resource. It is
-            provided by the Bean Developer. See resource-managers for the actual configuration of the
-            resource. </xsd:documentation>
-      </xsd:annotation>
-      <xsd:simpleContent>
-         <xsd:restriction base="javaee:string"/>
-      </xsd:simpleContent>
-   </xsd:complexType>
-
-   <!-- **************************************************** -->
-
    <xsd:complexType name="resource-nameType">
       <xsd:annotation>
          <xsd:documentation> The resource-managers element is used to declare resource managers. A
@@ -1820,4 +1811,61 @@
          <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
       </xsd:sequence>
    </xsd:complexType>
+   
+   <!-- **************************************************** -->
+
+   <!-- Bring injection-targetType into jboss namespace -->
+   <xsd:complexType name="injection-targetType">
+      <xsd:sequence>
+         <xsd:element name="injection-target-class"
+            type="javaee:fully-qualified-classType" />
+         <xsd:element name="injection-target-name"
+            type="javaee:java-identifierType" />
+      </xsd:sequence>
+   </xsd:complexType>
+   
+   <!-- Bring jndiEnvirnmentRefsGroup info jboss namespace -->
+   <xsd:group name="jndiEnvironmentRefsGroup">
+      <xsd:sequence>
+         <xsd:element name="env-entry" type="javaee:env-entryType"
+            minOccurs="0" maxOccurs="unbounded" />
+         <xsd:element name="ejb-ref" type="jboss:jboss-ejb-refType"
+            minOccurs="0" maxOccurs="unbounded" />
+         <xsd:element name="ejb-local-ref"
+            type="jboss:jboss-ejb-local-refType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <xsd:group ref="javaee:service-refGroup" />
+         <xsd:element name="resource-ref" type="javaee:resource-refType"
+            minOccurs="0" maxOccurs="unbounded" />
+         <xsd:element name="resource-env-ref"
+            type="javaee:resource-env-refType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <xsd:element name="message-destination-ref"
+            type="javaee:message-destination-refType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <xsd:element name="persistence-context-ref"
+            type="javaee:persistence-context-refType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <xsd:element name="persistence-unit-ref"
+            type="javaee:persistence-unit-refType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <xsd:element name="post-construct"
+            type="javaee:lifecycle-callbackType" minOccurs="0"
+            maxOccurs="unbounded" />
+         <xsd:element name="pre-destroy"
+            type="javaee:lifecycle-callbackType" minOccurs="0"
+            maxOccurs="unbounded" />
+      </xsd:sequence>
+   </xsd:group>
+
+   <!-- Bring resourceGroup into jboss namespace -->
+   <xsd:group name="resourceGroup">
+      <xsd:sequence>
+         <xsd:element name="mapped-name" type="javaee:xsdStringType"
+            minOccurs="0" />
+         <xsd:element name="injection-target"
+            type="jboss:injection-targetType" minOccurs="0"
+            maxOccurs="unbounded" />
+      </xsd:sequence>
+   </xsd:group>
 </xsd:schema>

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-18 13:32:42 UTC (rev 66236)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java	2007-10-18 13:48:54 UTC (rev 66237)
@@ -122,6 +122,7 @@
       
       assertNotNull(bean.getIgnoreDependency());
       assertNotNull(bean.getIgnoreDependency().getInjectionTargets());
+      assertEquals(2, bean.getIgnoreDependency().getInjectionTargets().size());
       int i = 1;
       for(ResourceInjectionTargetMetaData target : bean.getIgnoreDependency().getInjectionTargets())
       {
@@ -182,6 +183,17 @@
    }
    
    /**
+    * Test the service bean from dd.
+    */
+   public void testService() throws Exception
+   {
+//      JBossXBTestDelegate xbdelegate = (JBossXBTestDelegate) super.getDelegate();
+//      xbdelegate.setValidateSchema(false);
+      
+      JBossMetaData result = unmarshal();
+   }
+   
+   /**
     * Simple test of a jboss.xml with a 5.0 dtd doctype
     * @throws Exception
     */

Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testService.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testService.xml	                        (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testService.xml	2007-10-18 13:48:54 UTC (rev 66237)
@@ -0,0 +1,82 @@
+<?xml version="1.0"?>
+<jboss
+        xmlns="http://www.jboss.com/xml/ns/javaee"
+        xmlns:jee="http://java.sun.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>
+      <service>
+         <ejb-name>ServiceSix</ejb-name>
+         <business-local>org.jboss.ejb3.test.service.ServiceSixLocal</business-local>
+         <business-remote>org.jboss.ejb3.test.service.ServiceSixRemote</business-remote>
+         <ejb-class>org.jboss.ejb3.test.service.ServiceSix</ejb-class>
+         <ejb-ref>
+            <jee:description>test</jee:description>
+            <ejb-ref-name>ejb/StatelessBean</ejb-ref-name>
+            <ejb-ref-type>Session</ejb-ref-type>
+            <remote>org.jboss.ejb3.test.service.StatelessRemote</remote>
+            <ejb-link>StatelessBean</ejb-link>
+            <injection-target>
+               <injection-target-class>org.jboss.ejb3.test.service.ServiceSix</injection-target-class>
+               <injection-target-name>stateless</injection-target-name>
+            </injection-target>
+            <jndi-name>StatelessBean/remote</jndi-name>
+         </ejb-ref>
+         <ejb-local-ref>
+            <ejb-ref-name>ejb/StatelessLocal</ejb-ref-name>
+            <ejb-ref-type>Session</ejb-ref-type>
+            <local>org.jboss.ejb3.test.service.StatelessLocal</local>
+            <ejb-link>StatelessBean</ejb-link>
+            <injection-target>
+               <injection-target-class>org.jboss.ejb3.test.service.ServiceSix</injection-target-class>
+               <injection-target-name>setStatelessLocal</injection-target-name>
+            </injection-target>
+            <jndi-name>StatelessBean/local</jndi-name>
+         </ejb-local-ref>
+         <security-identity>
+            <run-as>
+               <role-name>role name</role-name>
+            </run-as>
+            <run-as-principal>run as principal</run-as-principal>
+         </security-identity>
+         <resource-ref>
+            <res-ref-name>testDatasource</res-ref-name>
+            <res-type>javax.sql.DataSource</res-type>
+            <res-auth>Container</res-auth>
+            <res-sharing-scope>Shareable</res-sharing-scope>
+            <mapped-name>java:/DefaultDS</mapped-name>
+            <jee:injection-target>
+               <jee:injection-target-class>org.jboss.ejb3.test.service.ServiceSix</jee:injection-target-class>
+               <jee:injection-target-name>testDatasource</jee:injection-target-name>
+            </jee:injection-target>
+         </resource-ref>
+         <resource-env-ref>
+            <jee:description>A test of the resource-env-ref tag</jee:description>
+            <jee:resource-env-ref-name>res/aQueue</jee:resource-env-ref-name>
+            <jee:resource-env-ref-type>javax.jms.Queue</jee:resource-env-ref-type>
+            <jndi-name>queue/mdbtest</jndi-name>
+         </resource-env-ref>
+         <message-destination-ref>
+            <message-destination-ref-name>messageDestinationRef</message-destination-ref-name>
+            <jee:mapped-name>mappedName</jee:mapped-name>
+         </message-destination-ref>
+         <object-name>object name</object-name>
+         <management>org.jboss.ejb3.test.service.ServiceSixManagement</management>
+         <xmbean>xmbean</xmbean>
+         <remote-binding>
+            <client-bind-url>client bind url</client-bind-url>
+         </remote-binding>
+         <jndi-name>serviceSix/remote</jndi-name>
+         <local-jndi-name>serviceSix/local</local-jndi-name>
+         <security-domain>security domain</security-domain>
+         <method-attributes>
+            <method>
+               <method-name>test</method-name>
+               <transaction-timeout>1</transaction-timeout>
+            </method>
+         </method-attributes>
+      </service>
+   </enterprise-beans>
+</jboss>


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




More information about the jboss-cvs-commits mailing list