[jboss-cvs] JBossAS SVN: r72867 - in projects/metadata/trunk/src: main/java/org/jboss/metadata/javaee/spec and 5 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Apr 29 12:23:55 EDT 2008


Author: wolfc
Date: 2008-04-29 12:23:55 -0400 (Tue, 29 Apr 2008)
New Revision: 72867

Added:
   projects/metadata/trunk/src/main/resources/schema/jboss-client_5_0.xsd
   projects/metadata/trunk/src/test/java/org/jboss/metadata/test/generator/
   projects/metadata/trunk/src/test/java/org/jboss/metadata/test/generator/SchemaGenerator.java
Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClientMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/JavaEEMetaDataConstants.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceReferenceMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml
Log:
JBMETA-31: generated jboss-client_5_0.xsd

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java	2008-04-29 15:44:23 UTC (rev 72866)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java	2008-04-29 16:23:55 UTC (rev 72867)
@@ -33,11 +33,13 @@
  * JBoss specific meta data for JavaEE 5 clients.
  *
  * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision: $
+ * @version $Revision$
  */
 @XmlRootElement(name="jboss-client", namespace=JavaEEMetaDataConstants.JBOSS_NS)
 @JBossXmlSchema(
-      xmlns={@XmlNs(namespaceURI = JavaEEMetaDataConstants.JAVAEE_NS, prefix = "jee")},
+      xmlns={@XmlNs(namespaceURI = JavaEEMetaDataConstants.JBOSS_NS, prefix = "jboss"),
+            @XmlNs(namespaceURI = JavaEEMetaDataConstants.JAVAEE_NS, prefix = "jee"),
+            @XmlNs(namespaceURI = JavaEEMetaDataConstants.XSD_NS, prefix = "xsd")},
       ignoreUnresolvedFieldOrClass=false,
       namespace=JavaEEMetaDataConstants.JBOSS_NS,
       elementFormDefault=XmlNsForm.QUALIFIED)

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClientMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClientMetaData.java	2008-04-29 15:44:23 UTC (rev 72866)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClientMetaData.java	2008-04-29 16:23:55 UTC (rev 72867)
@@ -31,17 +31,14 @@
 
 import org.jboss.metadata.client.spec.ApplicationClientMetaData;
 import org.jboss.metadata.ejb.jboss.JBossEnvironmentRefsGroupMetaData;
-import org.jboss.metadata.javaee.spec.AnnotatedEJBReferenceMetaData;
 import org.jboss.metadata.javaee.spec.AnnotatedEJBReferencesMetaData;
 import org.jboss.metadata.javaee.spec.EJBReferenceMetaData;
 import org.jboss.metadata.javaee.spec.EJBReferencesMetaData;
 import org.jboss.metadata.javaee.spec.Environment;
 import org.jboss.metadata.javaee.spec.EnvironmentEntriesMetaData;
 import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
+import org.jboss.metadata.javaee.spec.LifecycleCallbacksMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
-import org.jboss.metadata.javaee.spec.LifecycleCallbacksMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationReferencesMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationsMetaData;
@@ -53,6 +50,8 @@
 import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
 import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
 import org.jboss.metadata.javaee.spec.ResourceReferencesMetaData;
+import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
 import org.jboss.metadata.javaee.support.IdMetaData;
 import org.jboss.metadata.javaee.support.IdMetaDataImpl;
 import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptionGroup;
@@ -203,6 +202,7 @@
    {
       this.messageDestinations = messageDestinations;
    }
+   @XmlTransient
    public EJBReferenceMetaData getEjbReferenceByName(String name)
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -210,6 +210,7 @@
       return jndiEnvironmentRefsGroup.getEjbReferenceByName(name);
    }
 
+   @XmlTransient
    public EJBReferencesMetaData getEjbReferences()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -226,6 +227,7 @@
       return refs;
    }
 
+   @XmlTransient
    public EnvironmentEntriesMetaData getEnvironmentEntries()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -233,6 +235,7 @@
       return jndiEnvironmentRefsGroup.getEnvironmentEntries();
    }
 
+   @XmlTransient
    public EnvironmentEntryMetaData getEnvironmentEntryByName(String name)
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -240,6 +243,7 @@
       return jndiEnvironmentRefsGroup.getEnvironmentEntryByName(name);
    }
 
+   @XmlTransient
    public MessageDestinationReferenceMetaData getMessageDestinationReferenceByName(String name)
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -247,6 +251,7 @@
       return jndiEnvironmentRefsGroup.getMessageDestinationReferenceByName(name);
    }
 
+   @XmlTransient
    public MessageDestinationReferencesMetaData getMessageDestinationReferences()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -254,6 +259,7 @@
       return jndiEnvironmentRefsGroup.getMessageDestinationReferences();
    }
 
+   @XmlTransient
    public PersistenceUnitReferenceMetaData getPersistenceUnitReferenceByName(String name)
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -261,6 +267,7 @@
       return jndiEnvironmentRefsGroup.getPersistenceUnitReferenceByName(name);
    }
 
+   @XmlTransient
    public PersistenceUnitReferencesMetaData getPersistenceUnitRefs()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -268,6 +275,7 @@
       return jndiEnvironmentRefsGroup.getPersistenceUnitRefs();
    }
 
+   @XmlTransient
    public LifecycleCallbacksMetaData getPostConstructs()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -275,6 +283,7 @@
       return jndiEnvironmentRefsGroup.getPostConstructs();
    }
 
+   @XmlTransient
    public LifecycleCallbacksMetaData getPreDestroys()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -282,6 +291,7 @@
       return jndiEnvironmentRefsGroup.getPreDestroys();
    }
 
+   @XmlTransient
    public ServiceReferenceMetaData getServiceReferenceByName(String name)
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -289,6 +299,7 @@
       return jndiEnvironmentRefsGroup.getServiceReferenceByName(name);
    }
 
+   @XmlTransient
    public ServiceReferencesMetaData getServiceReferences()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -296,6 +307,7 @@
       return jndiEnvironmentRefsGroup.getServiceReferences();
    }
 
+   @XmlTransient
    public ResourceEnvironmentReferenceMetaData getResourceEnvironmentReferenceByName(String name)
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -303,6 +315,7 @@
       return jndiEnvironmentRefsGroup.getResourceEnvironmentReferenceByName(name);
    }
 
+   @XmlTransient
    public ResourceEnvironmentReferencesMetaData getResourceEnvironmentReferences()
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -310,6 +323,7 @@
       return jndiEnvironmentRefsGroup.getResourceEnvironmentReferences();
    }
 
+   @XmlTransient
    public ResourceReferenceMetaData getResourceReferenceByName(String name)
    {
       if(jndiEnvironmentRefsGroup == null)
@@ -317,6 +331,7 @@
       return jndiEnvironmentRefsGroup.getResourceReferenceByName(name);
    }
 
+   @XmlTransient
    public ResourceReferencesMetaData getResourceReferences()
    {
       if(jndiEnvironmentRefsGroup == null)

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/JavaEEMetaDataConstants.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/JavaEEMetaDataConstants.java	2008-04-29 15:44:23 UTC (rev 72866)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/JavaEEMetaDataConstants.java	2008-04-29 16:23:55 UTC (rev 72867)
@@ -46,4 +46,6 @@
 
    /** The jbosscmp-jdbc namespace*/
    String JBOSS_CMP2X_NS = "http://www.jboss.com/xml/ns/javaee/cmp2x";
+   
+   String XSD_NS = "http://www.w3.org/2001/XMLSchema";
 }

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceReferenceMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceReferenceMetaData.java	2008-04-29 15:44:23 UTC (rev 72866)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ResourceReferenceMetaData.java	2008-04-29 16:23:55 UTC (rev 72867)
@@ -33,7 +33,11 @@
  * @author <a href="adrian at jboss.com">Adrian Brock</a>
  * @version $Revision: 1.1 $
  */
- at XmlType(name="resource-refType")
+ at XmlType(name="resource-refType", 
+      propOrder={ 
+         "descriptions", "resourceRefName", "type", "resAuth", "resSharingScope", "mappedName", "injectionTargets",
+         "ignoreDependency", "jndiName", "resourceName", "resUrl"
+         } )
 public class ResourceReferenceMetaData extends ResourceInjectionMetaDataWithDescriptions implements MergeableMappedMetaData<ResourceReferenceMetaData>
 {
    /** The serialVersionUID */

Added: projects/metadata/trunk/src/main/resources/schema/jboss-client_5_0.xsd
===================================================================
--- projects/metadata/trunk/src/main/resources/schema/jboss-client_5_0.xsd	                        (rev 0)
+++ projects/metadata/trunk/src/main/resources/schema/jboss-client_5_0.xsd	2008-04-29 16:23:55 UTC (rev 72867)
@@ -0,0 +1,342 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+   xmlns:jboss="http://www.jboss.com/xml/ns/javaee"
+   xmlns:jee="http://java.sun.com/xml/ns/javaee"
+   targetNamespace="http://www.jboss.com/xml/ns/javaee"
+   version="5.0"
+   elementFormDefault="qualified"
+   >
+   <xsd:element name="jboss-client" type="jboss:jboss-clientType"/>
+   <xsd:complexType name="ejb-refType">
+      <xsd:sequence>
+         <xsd:element name="home" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ejb-link" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="remote" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="ejb-ref-type" type="jboss:ejb-ref-typeType" minOccurs="0"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ejb-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="message-destinationType">
+      <xsd:sequence>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="icon" type="jboss:iconType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="display-name" type="jboss:display-nameType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="message-destination-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="persistence-unit-refType">
+      <xsd:sequence>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="persistence-unit-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="persistence-unit-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="message-destination-refType">
+      <xsd:sequence>
+         <xsd:element name="message-destination-link" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="message-destination-type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="message-destination-usage" type="jboss:message-destination-usageType" minOccurs="0"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="message-destination-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="port-component-refType">
+      <xsd:sequence>
+         <xsd:element name="config-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="stub-property" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="config-file" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="call-property" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="enable-mtom" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="port-component-link" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="service-endpoint-interface" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="port-qname" type="xsd:QName" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="env-entryType">
+      <xsd:sequence>
+         <xsd:element name="env-entry-type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="env-entry-value" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="env-entry-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="jboss-clientType">
+      <xsd:sequence>
+         <xsd:element name="callback-handler" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="metadata-complete" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="icon" type="jboss:iconType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="display-name" type="jboss:display-nameType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:sequence>
+            <xsd:element name="env-entry" type="jboss:env-entryType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="ejb-ref" type="jboss:ejb-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="ejb-local-ref" type="jboss:ejb-local-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="service-ref" type="jboss:service-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="resource-ref" type="jboss:resource-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="resource-env-ref" type="jboss:resource-env-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="message-destination-ref" type="jboss:message-destination-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="persistence-context-ref" type="jboss:persistence-context-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="persistence-unit-ref" type="jboss:persistence-unit-refType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="post-construct" type="jboss:lifecycle-callbackType" minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="pre-destroy" type="jboss:lifecycle-callbackType" minOccurs="0" maxOccurs="unbounded"/>
+         </xsd:sequence>
+         <xsd:element name="message-destinations" type="jboss:message-destinationType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="depends" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+      <xsd:attribute name="version" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="descriptionType">
+      <xsd:sequence>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+      <xsd:attribute name="lang" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="ejb-local-refType">
+      <xsd:sequence>
+         <xsd:element name="ejb-link" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="local-jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="ejb-ref-type" type="jboss:ejb-ref-typeType" minOccurs="0"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="local-home" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="local" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ejb-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="resource-env-refType">
+      <xsd:sequence>
+         <xsd:element name="resource-env-ref-type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="resource-env-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:simpleType name="res-sharing-scopeType">
+      <xsd:restriction base="xsd:string">
+         <xsd:enumeration value="Shareable"/>
+         <xsd:enumeration value="Unshareable"/>
+      </xsd:restriction>
+   </xsd:simpleType>
+   <xsd:complexType name="iconType">
+      <xsd:sequence>
+         <xsd:element name="small-icon" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="large-icon" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+      <xsd:attribute name="lang" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="injection-targetType">
+      <xsd:sequence>
+         <xsd:element name="injection-target-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target-class" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+   </xsd:complexType>
+   <xsd:simpleType name="res-authType">
+      <xsd:restriction base="xsd:string">
+         <xsd:enumeration value="SERVLET"/>
+         <xsd:enumeration value="Container"/>
+         <xsd:enumeration value="Application"/>
+      </xsd:restriction>
+   </xsd:simpleType>
+   <xsd:complexType name="service-ref_handlerType">
+      <xsd:sequence>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="icon" type="jboss:iconType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="display-name" type="jboss:display-nameType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="handler-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="handler-class" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="init-param" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="soap-header" type="xsd:QName" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="soap-role" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="port-name" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="propertyType">
+      <xsd:sequence>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="value" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:simpleType name="message-destination-usageType">
+      <xsd:restriction base="xsd:string">
+         <xsd:enumeration value="ConsumesProduces"/>
+         <xsd:enumeration value="Consumes"/>
+         <xsd:enumeration value="Produces"/>
+      </xsd:restriction>
+   </xsd:simpleType>
+   <xsd:complexType name="lifecycle-callbackType">
+      <xsd:sequence>
+         <xsd:element name="lifecycle-callback-class" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="lifecycle-callback-method" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+   </xsd:complexType>
+   <xsd:complexType name="emptyType">
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="display-nameType">
+      <xsd:sequence>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+      <xsd:attribute name="lang" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="resource-refType">
+      <xsd:sequence>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="res-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="res-type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="res-auth" type="jboss:res-authType" minOccurs="0"/>
+         <xsd:element name="res-sharing-scope" type="jboss:res-sharing-scopeType" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="res-url" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="persistence-context-refType">
+      <xsd:sequence>
+         <xsd:element name="persistence-property" type="jboss:propertyType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="persistence-context-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="persistence-context-type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="persistence-unit-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:complexType name="service-refType">
+      <xsd:sequence>
+         <xsd:element name="service-ref-type" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="service-impl-class" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="wsdl-file" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="handler" type="jboss:service-ref_handlerType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="port-component-ref" type="jboss:port-component-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="service-interface" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="config-file" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="handler-chains" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="service-qname" type="xsd:QName" minOccurs="0"/>
+         <xsd:element name="name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="service-ref-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="key" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="handler-chain" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="config-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jaxrpc-mapping-file" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="injection-target" type="jboss:injection-targetType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="wsdl-override" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="icon" type="jboss:iconType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="display-name" type="jboss:display-nameType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="dependency-ignored" type="xsd:boolean" minOccurs="0"/>
+         <xsd:element name="mapped-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="jndi-name" type="xsd:string" minOccurs="0"/>
+         <xsd:element name="ignore-dependency" type="jboss:emptyType" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:simpleType name="ejb-ref-typeType">
+      <xsd:restriction base="xsd:string">
+         <xsd:enumeration value="Session"/>
+         <xsd:enumeration value="Entity"/>
+      </xsd:restriction>
+   </xsd:simpleType>
+   <xsd:complexType name="service-ref_handler-chainType">
+      <xsd:sequence>
+         <xsd:element name="service-name-pattern" type="xsd:QName" minOccurs="0"/>
+         <xsd:element name="handler" type="jboss:service-ref_handlerType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="port-name-pattern" type="xsd:QName" minOccurs="0"/>
+         <xsd:element name="protocol-bindings" type="xsd:string" minOccurs="0"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string"/>
+   </xsd:complexType>
+   <xsd:group name="descriptionGroup">
+      <xsd:sequence>
+         <xsd:element name="description" type="jboss:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="icon" type="jboss:iconType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="display-name" type="jboss:display-nameType" minOccurs="0" maxOccurs="unbounded"/>
+      </xsd:sequence>
+   </xsd:group>
+   <xsd:group name="jbossJndiEnvironmentRefsGroup">
+      <xsd:sequence>
+         <xsd:element name="env-entry" type="jboss:env-entryType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="ejb-ref" type="jboss:ejb-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="ejb-local-ref" type="jboss:ejb-local-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="service-ref" type="jboss:service-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="resource-ref" type="jboss:resource-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="resource-env-ref" type="jboss:resource-env-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="message-destination-ref" type="jboss:message-destination-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="persistence-context-ref" type="jboss:persistence-context-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="persistence-unit-ref" type="jboss:persistence-unit-refType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="post-construct" type="jboss:lifecycle-callbackType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="pre-destroy" type="jboss:lifecycle-callbackType" minOccurs="0" maxOccurs="unbounded"/>
+      </xsd:sequence>
+   </xsd:group>
+</xsd:schema>

Added: projects/metadata/trunk/src/test/java/org/jboss/metadata/test/generator/SchemaGenerator.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/metadata/test/generator/SchemaGenerator.java	                        (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/metadata/test/generator/SchemaGenerator.java	2008-04-29 16:23:55 UTC (rev 72867)
@@ -0,0 +1,319 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.test.generator;
+
+import java.lang.reflect.Field;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import javax.xml.namespace.QName;
+
+import org.jboss.logging.Logger;
+import org.jboss.xb.binding.sunday.unmarshalling.AllBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.AttributeBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ElementBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ModelGroupBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ParticleBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.SequenceBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.TermBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.TypeBinding;
+import org.jboss.xb.builder.JBossXBBuilder;
+import org.jboss.xb.builder.runtime.EnumValueAdapter;
+
+/**
+ * A simplistic schema generator.
+ * 
+ * This is meant to generate a schema for jboss-client from JBossClient5MetaData, using
+ * it on other classes will probably produce errors.
+ * 
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+public class SchemaGenerator
+{
+   private static final Logger log = Logger.getLogger(SchemaGenerator.class);
+   
+   private static final Field field;
+   
+   private static Map<String, String> prefixByNs = new HashMap<String, String>();
+   private static int indent = 0;
+   
+   static
+   {
+      try
+      {
+         field = SchemaBinding.class.getDeclaredField("nsByPrefix");
+         field.setAccessible(true);
+      }
+      catch (SecurityException e)
+      {
+         throw new RuntimeException(e);
+      }
+      catch (NoSuchFieldException e)
+      {
+         throw new RuntimeException(e);
+      }
+   }
+   
+   private static String attrs(ParticleBinding particle)
+   {
+      String s = "";
+      if(particle.getMinOccurs() != 1)
+         s = " minOccurs=\""  + particle.getMinOccurs() + "\"";
+      if(particle.getMaxOccursUnbounded())
+         s += " maxOccurs=\"unbounded\"";
+      else if(particle.getMaxOccurs() != 1)
+         s += " maxOccurs=\"" + particle.getMaxOccurs() + "\"";
+      return s;
+   }
+   
+   private static void dumpAttributes(Collection<AttributeBinding> attributes)
+   {
+      for(AttributeBinding attribute : attributes)
+      {
+         println("<xsd:attribute name=\"" + attribute.getQName().getLocalPart() + "\" type=\"" + prefixed(attribute.getType().getQName()) + "\"/>");
+      }
+   }
+   
+   private static void dumpComplexType(TypeBinding type)
+   {
+      println("<xsd:complexType name=\"" + type.getQName().getLocalPart() + "\">");
+      indent++;
+      dumpParticle(type.getParticle());
+      dumpAttributes(type.getAttributes());
+      indent--;
+      println("</xsd:complexType>");
+   }
+   
+   private static void dumpElement(ParticleBinding particle, ElementBinding element)
+   {
+      println("<xsd:element name=\"" + element.getQName().getLocalPart() + "\" type=\"" + prefixed(element.getType().getQName()) + "\"" + attrs(particle) + "/>");
+      
+      //println("</xsd:element>");
+   }
+   
+   private static void dumpParticle(ParticleBinding particle)
+   {
+      dumpTerm(particle, particle.getTerm());
+   }
+   
+   private static void dumpModelGroup(ParticleBinding particle, ModelGroupBinding modelGroup, String name)
+   {
+      // FIXME: wickedness in XB, it generates dummy model groups
+      boolean isDummyModelGroup = isDummyModelGroup(particle, modelGroup);
+      if(!isDummyModelGroup)
+      {
+         println("<xsd:" + name + attrs(particle) + ">");
+         indent++;
+      }
+      Collection<ParticleBinding> particles = modelGroup.getParticles();
+      for(ParticleBinding p : particles)
+      {
+         dumpParticle(p);
+      }
+      if(!isDummyModelGroup)
+      {
+         indent--;
+         println("</xsd:" + name + ">");
+      }
+   }
+   
+   private static void dumpModelGroup(ModelGroupBinding modelGroup)
+   {
+      println("<xsd:group name=\"" + modelGroup.getQName() + "\">");
+//      if(modelGroup instanceof AllBinding)
+//         log.warn("Weirdness: found all binding on " + modelGroup);
+      println("   <xsd:sequence>");
+      indent += 2;
+      Collection<ParticleBinding> particles = modelGroup.getParticles();
+      for(ParticleBinding p : particles)
+      {
+         dumpParticle(p);
+      }
+      indent -= 2;
+      println("   </xsd:sequence>");
+      println("</xsd:group>");
+   }
+   
+   private static void dumpSimpleType(TypeBinding type)
+   {
+//      System.err.println(type.getAttributes());
+//      System.err.println(type.getBaseType());
+//      System.err.println(type.getValueAdapter());
+      println("<xsd:simpleType name=\"" + type.getQName().getLocalPart() + "\">");
+      println("   <xsd:restriction base=\"" + prefixed(type.getBaseType().getQName()) + "\">");
+      EnumValueAdapter enumValueAdapter = (EnumValueAdapter) type.getValueAdapter();
+      for(Object o : enumValueAdapter.getMapping().values())
+      {
+         println("      <xsd:enumeration value=\"" + o + "\"/>");
+      }
+      println("   </xsd:restriction>");
+      println("</xsd:simpleType>");
+   }
+   
+   private static void dumpTerm(ParticleBinding particle, TermBinding term)
+   {
+      if(term instanceof AllBinding)
+         dumpModelGroup(particle, (AllBinding) term, "all");
+      else if(term.isElement())
+         dumpElement(particle, (ElementBinding) term);
+      else if(term instanceof SequenceBinding)
+         dumpModelGroup(particle, (SequenceBinding) term, "sequence");
+      else
+         throw new RuntimeException("NYI " + term);
+   }
+   
+   private static void dumpType(TypeBinding type)
+   {
+      if(type.isSimple())
+         dumpSimpleType(type);
+      else
+         dumpComplexType(type);
+   }
+   
+   @SuppressWarnings("unchecked")
+   private static Map<String, String> getNsByPrefix(SchemaBinding binding)
+   {
+      try
+      {
+         return (Map<String, String>) field.get(binding);
+      }
+      catch (IllegalArgumentException e)
+      {
+         throw new RuntimeException(e);
+      }
+      catch (IllegalAccessException e)
+      {
+         throw new RuntimeException(e);
+      }
+   }
+   
+   private static boolean isDummyModelGroup(ParticleBinding particle, ModelGroupBinding modelGroup)
+   {
+      int minOccurs, maxOccurs;
+      boolean maxOccursUnbounded;
+      if(modelGroup instanceof AllBinding)
+      {
+         minOccurs = 0;
+         maxOccurs = 1;
+         maxOccursUnbounded = true;
+      }
+      else
+      {
+         minOccurs = particle.getMinOccurs();
+         maxOccurs = particle.getMaxOccurs();
+         maxOccursUnbounded = particle.getMaxOccursUnbounded();
+      }
+      Collection<ParticleBinding> particles = modelGroup.getParticles();
+      for(ParticleBinding p : particles)
+      {
+         if(p.getMinOccurs() != minOccurs)
+            return false;
+         if(p.getMaxOccurs() != maxOccurs)
+            return false;
+         if(p.getMaxOccursUnbounded() != maxOccursUnbounded)
+            return false;
+      }
+      return true;
+   }
+   
+   public static void main(String args[]) throws ClassNotFoundException
+   {
+      Class<?> root = Class.forName(args[0]);
+      
+      // TODO: arg
+      String targetNamespace = "http://www.jboss.com/xml/ns/javaee";
+      String version = "5.0";
+      
+      SchemaBinding binding = JBossXBBuilder.build(root);
+      
+      println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
+      
+      println("<xsd:schema xmlns=\"http://www.w3.org/2001/XMLSchema\"");
+      
+      Map<String, String> nsByPrefix = getNsByPrefix(binding);
+      for(String prefix : nsByPrefix.keySet())
+      {
+         String namespace = binding.getNamespace(prefix);
+         println("   xmlns:" + prefix + "=\"" + namespace + "\"");
+         prefixByNs.put(namespace, prefix);
+      }
+      println("   targetNamespace=\"" + targetNamespace + "\"");
+      println("   version=\"" + version + "\"");
+      println("   elementFormDefault=\"qualified\"");
+      println("   >");
+      
+      indent++;
+      
+      Iterator<ParticleBinding> particles = binding.getElementParticles();
+      while(particles.hasNext())
+      {
+         ParticleBinding particle = particles.next();
+         dumpParticle(particle);
+      }
+      
+      Iterator<TypeBinding> types = binding.getTypes();
+      while(types.hasNext())
+      {
+         TypeBinding type = types.next();
+         if(type.getQName().getNamespaceURI().equals(targetNamespace))
+            dumpType(type);
+      }
+      
+      Iterator<ModelGroupBinding> groups = binding.getGroups();
+      while(groups.hasNext())
+      {
+         ModelGroupBinding modelGroup = groups.next();
+         dumpModelGroup(modelGroup);
+      }
+      
+      indent--;
+      
+      println("</xsd:schema>");
+   }
+   
+   private static String prefixed(QName qName)
+   {
+      // FIXME: StubPropertyMetaData isn't properly setup
+      if(qName == null)
+         return "xsd:string";
+      
+      String namespace = qName.getNamespaceURI();
+      String prefix = prefixByNs.get(namespace);
+      if(prefix == null)
+         return qName.toString();
+      else
+         return prefix + ":" + qName.getLocalPart();
+   }
+   
+   private static void println(String s)
+   {
+      for(int i = 0; i < indent; i++)
+      {
+         System.out.print("   ");
+      }
+      System.out.println(s);
+   }
+}

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java	2008-04-29 15:44:23 UTC (rev 72866)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java	2008-04-29 16:23:55 UTC (rev 72867)
@@ -24,6 +24,8 @@
 import org.jboss.metadata.client.jboss.JBossClient5MetaData;
 import org.jboss.metadata.client.jboss.JBossClientMetaData;
 import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+import org.jboss.test.metadata.javaee.JBossXBTestDelegate;
+import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
 import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
 
 /**
@@ -55,11 +57,18 @@
    
    public static SchemaBindingResolver initResolver()
    {
-      return schemaResolverForClass(JBossClient5MetaData.class);
+      //return schemaResolverForClass(JBossClient5MetaData.class);
+      DefaultSchemaResolver resolver = new DefaultSchemaResolver();
+      resolver.addClassBindingForLocation("jboss-client_5_0.xsd", JBossClient5MetaData.class);
+      // Workaround wildard resolution slowness
+      resolver.addClassBinding("http://www.jboss.com/xml/ns/javaee", JBossClient5MetaData.class);
+      return resolver;
    }
    
    public void testEverything() throws Exception
    {
+      JBossXBTestDelegate xbdelegate = (JBossXBTestDelegate) super.getDelegate();
+      xbdelegate.setValidateSchema(true);
       JBossClient5MetaData jbossClientMetaData = unmarshal();
       assertEverything(jbossClientMetaData);
    }

Modified: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml	2008-04-29 15:44:23 UTC (rev 72866)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml	2008-04-29 16:23:55 UTC (rev 72867)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <jboss-client 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://java.sun.com/xml/ns/javaee/jboss-client_5_0.xsd"
+   xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.com/xml/ns/javaee/jboss-client_5_0.xsd"
    version="5.0"
    id="appclient-test">
    <!-- jndi name -->
@@ -13,6 +13,11 @@
       <res-url>http://localhost</res-url>
    </resource-ref>
       
+   <message-destination-ref>
+      <message-destination-ref-name>appClientMessageDestinationRef1Name</message-destination-ref-name>
+      <jndi-name>MDB_QUEUE</jndi-name>
+   </message-destination-ref>
+   
    <!-- depends -->
    <depends>appClientDepends1</depends>
    <depends>appClientDepends2</depends>




More information about the jboss-cvs-commits mailing list