[jboss-cvs] JBossAS SVN: r92135 - in projects/kernel/trunk: kernel/src/main/java/org/jboss/beans/metadata/plugins and 7 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Aug 7 11:10:17 EDT 2009


Author: alesj
Date: 2009-08-07 11:10:17 -0400 (Fri, 07 Aug 2009)
New Revision: 92135

Added:
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/package-info.java
   projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/support/PolicyTestDelegate.java
Modified:
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractAliasMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractArrayMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCallbackMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractClassLoaderMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyValueMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractListMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractNamedAliasMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractParameterMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractPropertyMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractRelatedClassMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSearchValueMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSetMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/InstallCallbackMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/UninstallCallbackMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/policy/AbstractBindingMetaData.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment10.java
   projects/kernel/trunk/kernel/src/main/resources/schema/jboss-beans-common_2_0.xsd
   projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/dependency/test/GenericBeanFactoryConstructorDependencyXMLTestCase.java
   projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/AbstractPolicyTest.java
   projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/JBossXBTestDelegate.java
   projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/deployment/test/ScopingOverrideTestCase.xml
   projects/kernel/trunk/pom.xml
Log:
[JBKERNEL-49]; use XB schema validation.

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractAliasMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractAliasMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractAliasMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -23,7 +23,6 @@
 
 import java.io.Serializable;
 import java.util.Iterator;
-
 import javax.xml.bind.annotation.XmlAnyElement;
 import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
@@ -34,15 +33,17 @@
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
 import org.jboss.util.JBossObject;
 import org.jboss.util.JBossStringBuilder;
+import org.jboss.xb.annotations.JBossXmlConstants;
+import org.jboss.xb.annotations.JBossXmlType;
 
 /**
  * Metadata for an alias.
  *
  * @author <a href="ales.justin at jboss.com">Ales Justin</a>
  */
- at XmlType(name="aliasType", propOrder="alias")
-public class AbstractAliasMetaData extends JBossObject
-      implements AliasMetaData, Serializable
+ at XmlType(name="aliasType")
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_CHOICE)
+public class AbstractAliasMetaData extends JBossObject implements AliasMetaData, Serializable
 {
    private static final long serialVersionUID = 2L;
 

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractArrayMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractArrayMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractArrayMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -31,7 +31,9 @@
 import org.jboss.xb.annotations.JBossXmlChild;
 import org.jboss.xb.annotations.JBossXmlChildWildcard;
 import org.jboss.xb.annotations.JBossXmlChildren;
+import org.jboss.xb.annotations.JBossXmlConstants;
 import org.jboss.xb.annotations.JBossXmlNoElements;
+import org.jboss.xb.annotations.JBossXmlType;
 
 /**
  * Array metadata.
@@ -57,6 +59,7 @@
    @JBossXmlChild(name="value-factory", type=AbstractValueFactoryMetaData.class)
 })
 @JBossXmlChildWildcard(wrapper=AbstractValueMetaData.class, property="value")
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_CHOICE)
 public class AbstractArrayMetaData extends AbstractListMetaData
 {
    private static final long serialVersionUID = 2L;

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCallbackMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCallbackMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCallbackMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -22,12 +22,14 @@
 package org.jboss.beans.metadata.plugins;
 
 import java.io.Serializable;
+import java.util.List;
 import javax.xml.bind.annotation.XmlAttribute;
 import javax.xml.bind.annotation.XmlTransient;
 
 import org.jboss.beans.info.spi.PropertyInfo;
 import org.jboss.beans.metadata.spi.CallbackMetaData;
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
+import org.jboss.beans.metadata.spi.ParameterMetaData;
 import org.jboss.dependency.spi.CallbackItem;
 import org.jboss.dependency.spi.Cardinality;
 import org.jboss.dependency.spi.ControllerState;
@@ -70,6 +72,19 @@
       setState(ControllerState.INSTALLED);
    }
 
+   @Override
+   @XmlTransient
+   public List<ParameterMetaData> getParameters()
+   {
+      return null;
+   }
+
+   @Override
+   @XmlTransient
+   public void setParameters(List<ParameterMetaData> parameters)
+   {
+   }
+
    public String getProperty()
    {
       return property;

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractClassLoaderMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractClassLoaderMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractClassLoaderMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -24,7 +24,6 @@
 import java.io.Serializable;
 import java.util.Collections;
 import java.util.Iterator;
-
 import javax.xml.bind.annotation.XmlAnyElement;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElements;
@@ -38,6 +37,8 @@
 import org.jboss.managed.api.annotation.ManagementProperty;
 import org.jboss.util.JBossObject;
 import org.jboss.util.JBossStringBuilder;
+import org.jboss.xb.annotations.JBossXmlConstants;
+import org.jboss.xb.annotations.JBossXmlType;
 
 /**
  * A classloader.
@@ -47,8 +48,8 @@
  * @version $Revision$
  */
 @XmlType(name="classloaderType", propOrder="classLoader")
-public class AbstractClassLoaderMetaData extends JBossObject
-   implements ClassLoaderMetaData, Serializable
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_CHOICE)
+public class AbstractClassLoaderMetaData extends JBossObject implements ClassLoaderMetaData, Serializable
 {
    private static final long serialVersionUID = 2L;
 
@@ -81,7 +82,6 @@
    ({
       @XmlElement(name="bean", type=AbstractBeanMetaData.class),
       @XmlElement(name="inject", type=AbstractDependencyValueMetaData.class),
-      @XmlElement(name="search", type= AbstractSearchValueMetaData.class),
       @XmlElement(name="null", type=AbstractValueMetaData.class)
    })
    public void setClassLoader(ValueMetaData classloader)

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -26,8 +26,8 @@
 import java.util.Collection;
 import java.util.Iterator;
 import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.XmlTransient;
 
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
@@ -39,7 +39,9 @@
 import org.jboss.xb.annotations.JBossXmlChild;
 import org.jboss.xb.annotations.JBossXmlChildWildcard;
 import org.jboss.xb.annotations.JBossXmlChildren;
+import org.jboss.xb.annotations.JBossXmlConstants;
 import org.jboss.xb.annotations.JBossXmlNoElements;
+import org.jboss.xb.annotations.JBossXmlType;
 
 /**
  * Collection metadata.
@@ -65,6 +67,7 @@
    @JBossXmlChild(name="value-factory", type=AbstractValueFactoryMetaData.class)
 })
 @JBossXmlChildWildcard(wrapper=AbstractValueMetaData.class, property="value")
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_CHOICE)
 public class AbstractCollectionMetaData extends AbstractTypeMetaData
    implements Collection<MetaDataVisitorNode>, Serializable
 {

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -22,15 +22,14 @@
 package org.jboss.beans.metadata.plugins;
 
 import java.io.Serializable;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
-import java.util.ArrayList;
-
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlElements;
 import javax.xml.bind.annotation.XmlAnyElement;
 import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlType;
 
 import org.jboss.beans.info.spi.BeanInfo;
 import org.jboss.beans.metadata.plugins.builder.MutableParameterizedMetaData;
@@ -42,13 +41,13 @@
 import org.jboss.kernel.plugins.config.Configurator;
 import org.jboss.kernel.spi.config.KernelConfigurator;
 import org.jboss.kernel.spi.dependency.KernelControllerContext;
+import org.jboss.managed.api.annotation.ManagementProperty;
 import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.reflect.spi.ConstructorInfo;
 import org.jboss.reflect.spi.MethodInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.util.JBossObject;
 import org.jboss.util.JBossStringBuilder;
-import org.jboss.managed.api.annotation.ManagementProperty;
 
 /**
  * Metadata for construction.
@@ -123,7 +122,6 @@
       @XmlElement(name="set", type=AbstractSetMetaData.class),
       @XmlElement(name="value", type=StringValueMetaData.class),
       @XmlElement(name="inject", type=AbstractInjectionValueMetaData.class),
-      @XmlElement(name="search", type= AbstractSearchValueMetaData.class),
       @XmlElement(name="value-factory", type=AbstractValueFactoryMetaData.class)
    })
    public void setValue(ValueMetaData value)

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -51,7 +51,7 @@
  * @author <a href="ales.justin at jboss.com">Ales Justin</a>
  * @version $Revision$
  */
- at XmlType(name="demandsType")
+ at XmlType(name="demandType")
 public class AbstractDemandMetaData extends JBossObject
    implements DemandMetaData, Serializable
 {

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyValueMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyValueMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyValueMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -51,7 +51,7 @@
  * @author Radim Marek (obrien)
  * @version $Revision$
  */
- at XmlType(name="injectionType")
+ at XmlType(name="dependencyType")
 public class AbstractDependencyValueMetaData extends AbstractValueMetaData
 {
    private static final long serialVersionUID = 3L;
@@ -86,7 +86,6 @@
     */
    protected SearchInfo search = Search.DEFAULT;
 
-
    /**
     * Create a new dependency value
     */

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -43,7 +43,7 @@
  *
  * @author <a href="ales.justin at gmail.com">Ales Justin</a>
  */
- at XmlType
+ at XmlType(name="injectionType")
 public class AbstractInjectionValueMetaData extends AbstractDependencyValueMetaData
 {
    private static final long serialVersionUID = 3L;

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractListMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractListMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractListMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -31,7 +31,9 @@
 import org.jboss.xb.annotations.JBossXmlChild;
 import org.jboss.xb.annotations.JBossXmlChildWildcard;
 import org.jboss.xb.annotations.JBossXmlChildren;
+import org.jboss.xb.annotations.JBossXmlConstants;
 import org.jboss.xb.annotations.JBossXmlNoElements;
+import org.jboss.xb.annotations.JBossXmlType;
 
 /**
  * List metadata.
@@ -57,6 +59,7 @@
    @JBossXmlChild(name="value-factory", type=AbstractValueFactoryMetaData.class)
 })
 @JBossXmlChildWildcard(wrapper=AbstractValueMetaData.class, property="value")
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_CHOICE)
 public class AbstractListMetaData extends AbstractCollectionMetaData
    implements List<MetaDataVisitorNode>, Serializable
 {

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractNamedAliasMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractNamedAliasMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractNamedAliasMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -22,11 +22,13 @@
 package org.jboss.beans.metadata.plugins;
 
 import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.XmlTransient;
 
 import org.jboss.beans.metadata.spi.NamedAliasMetaData;
 import org.jboss.util.JBossStringBuilder;
+import org.jboss.xb.annotations.JBossXmlConstants;
+import org.jboss.xb.annotations.JBossXmlType;
 
 /**
  * Metadata for a named alias.
@@ -34,6 +36,7 @@
  * @author <a href="ales.justin at jboss.com">Ales Justin</a>
  */
 @XmlType(name="namedAliasType")
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_CHOICE)
 public class AbstractNamedAliasMetaData extends AbstractAliasMetaData implements NamedAliasMetaData
 {
    /** The serialVersionUID */

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractParameterMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractParameterMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractParameterMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -24,7 +24,6 @@
 import java.io.Serializable;
 import java.util.Set;
 import java.util.Stack;
-
 import javax.xml.bind.annotation.XmlAnyElement;
 import javax.xml.bind.annotation.XmlAttribute;
 import javax.xml.bind.annotation.XmlElement;
@@ -52,8 +51,7 @@
  * @version $Revision$
  */
 @XmlType(name="parameterType", propOrder={"annotations", "value"})
-public class AbstractParameterMetaData extends AbstractFeatureMetaData
-   implements ParameterMetaData, ValueMetaDataAware, Serializable
+public class AbstractParameterMetaData extends AbstractFeatureMetaData implements ParameterMetaData, ValueMetaDataAware, Serializable
 {
    private static final long serialVersionUID = 2L;
 
@@ -172,9 +170,9 @@
    @XmlElements
    ({
       @XmlElement(name="array", type=AbstractArrayMetaData.class),
+      @XmlElement(name="bean", type=AbstractBeanMetaData.class),
       @XmlElement(name="collection", type=AbstractCollectionMetaData.class),
       @XmlElement(name="inject", type=AbstractInjectionValueMetaData.class),
-      @XmlElement(name="search", type= AbstractSearchValueMetaData.class),
       @XmlElement(name="list", type=AbstractListMetaData.class),
       @XmlElement(name="map", type=AbstractMapMetaData.class),
       @XmlElement(name="null", type=AbstractValueMetaData.class),

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractPropertyMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractPropertyMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractPropertyMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -23,16 +23,15 @@
 
 import java.io.Serializable;
 import java.util.Set;
-
-import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlAnyElement;
 import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElements;
 import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlAnyElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlType;
 import javax.xml.bind.annotation.XmlValue;
 
-import org.jboss.beans.info.spi.PropertyInfo;
 import org.jboss.beans.info.spi.BeanInfo;
+import org.jboss.beans.info.spi.PropertyInfo;
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
 import org.jboss.beans.metadata.spi.PropertyMetaData;
@@ -41,9 +40,9 @@
 import org.jboss.kernel.plugins.config.Configurator;
 import org.jboss.kernel.spi.config.KernelConfigurator;
 import org.jboss.kernel.spi.dependency.KernelControllerContext;
+import org.jboss.managed.api.annotation.ManagementProperty;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.util.JBossStringBuilder;
-import org.jboss.managed.api.annotation.ManagementProperty;
 
 /**
  * Metadata for a property.
@@ -186,9 +185,9 @@
    @XmlElements
    ({
       @XmlElement(name="array", type=AbstractArrayMetaData.class),
+      @XmlElement(name="bean", type=AbstractBeanMetaData.class),
       @XmlElement(name="collection", type=AbstractCollectionMetaData.class),
       @XmlElement(name="inject", type=AbstractInjectionValueMetaData.class),
-      @XmlElement(name="search", type= AbstractSearchValueMetaData.class),
       @XmlElement(name="list", type=AbstractListMetaData.class),
       @XmlElement(name="map", type=AbstractMapMetaData.class),
       @XmlElement(name="set", type=AbstractSetMetaData.class),

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractRelatedClassMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractRelatedClassMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractRelatedClassMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -38,13 +38,16 @@
 import org.jboss.util.JBossObject;
 import org.jboss.util.JBossStringBuilder;
 import org.jboss.util.collection.CollectionsFactory;
+import org.jboss.xb.annotations.JBossXmlType;
+import org.jboss.xb.annotations.JBossXmlConstants;
 
 /**
  * Metadata for a related classes.
  *
  * @author <a href="ales.justin at jboss.com">Ales Justin</a>
  */
- at XmlType(name="relatedClassType", propOrder={"enabled"})
+ at XmlType(name="relatedClassType")
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_UNORDERED_SEQUENCE)
 public class AbstractRelatedClassMetaData extends JBossObject implements RelatedClassMetaData, Serializable
 {
    private static final long serialVersionUID = 1L;

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSearchValueMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSearchValueMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSearchValueMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -23,7 +23,6 @@
 
 import javax.xml.bind.annotation.XmlAnyElement;
 import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
 
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
 import org.jboss.beans.metadata.spi.ValueMetaData;
@@ -48,7 +47,6 @@
  * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
  */
 @Deprecated
- at XmlType(name="searchType")
 public class AbstractSearchValueMetaData extends AbstractValueMetaData
 {
    /** The serialVersionUID */

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSetMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSetMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractSetMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -31,7 +31,9 @@
 import org.jboss.xb.annotations.JBossXmlChild;
 import org.jboss.xb.annotations.JBossXmlChildWildcard;
 import org.jboss.xb.annotations.JBossXmlChildren;
+import org.jboss.xb.annotations.JBossXmlConstants;
 import org.jboss.xb.annotations.JBossXmlNoElements;
+import org.jboss.xb.annotations.JBossXmlType;
 
 /**
  * Set metadata.
@@ -57,6 +59,7 @@
    @JBossXmlChild(name="value-factory", type=AbstractValueFactoryMetaData.class)
 })
 @JBossXmlChildWildcard(wrapper=AbstractValueMetaData.class, property="value")
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_CHOICE)
 public class AbstractSetMetaData extends AbstractCollectionMetaData
    implements Set<MetaDataVisitorNode>, Serializable
 {

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -26,7 +26,6 @@
 import java.util.Iterator;
 import java.util.Stack;
 import javax.xml.bind.annotation.XmlTransient;
-import javax.xml.bind.annotation.XmlType;
 
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
@@ -44,10 +43,8 @@
  * @author <a href="adrian at jboss.com">Adrian Brock</a>
  * @version $Revision$
  */
- at XmlType
 @JBossXmlNoElements
-public class AbstractValueMetaData extends JBossObject
-   implements ValueMetaData, TypeProvider, Serializable
+public class AbstractValueMetaData extends JBossObject implements ValueMetaData, TypeProvider, Serializable
 {
    private static final long serialVersionUID = 2L;
 

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/InstallCallbackMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/InstallCallbackMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/InstallCallbackMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -32,7 +32,7 @@
  * @author <a href="ales.justin at jboss.com">Ales Justin</a>
  * @author <a href="adrian at jboss.com">Adrian Brock</a>
  */
- at XmlType(name="installCallbackType", propOrder={"annotations", "parameters"})
+ at XmlType(name="installCallbackType", propOrder={"annotations"})
 public class InstallCallbackMetaData extends AbstractCallbackMetaData
 {
    /** The serialVersionUID */

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/UninstallCallbackMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/UninstallCallbackMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/UninstallCallbackMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -32,7 +32,7 @@
  * @author <a href="ales.justin at jboss.com">Ales Justin</a>
  * @author <a href="adrian at jboss.com">Adrian Brock</a>
  */
- at XmlType(name="uninstallCallbackType", propOrder={"annotations", "parameters"})
+ at XmlType(name="uninstallCallbackType", propOrder={"annotations"})
 public class UninstallCallbackMetaData extends AbstractCallbackMetaData
 {
    /** The serialVersionUID */

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/policy/AbstractBindingMetaData.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/policy/AbstractBindingMetaData.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/plugins/policy/AbstractBindingMetaData.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -38,7 +38,6 @@
 import org.jboss.beans.metadata.plugins.AbstractSetMetaData;
 import org.jboss.beans.metadata.plugins.AbstractValueFactoryMetaData;
 import org.jboss.beans.metadata.plugins.AbstractValueMetaData;
-import org.jboss.beans.metadata.plugins.AbstractSearchValueMetaData;
 import org.jboss.beans.metadata.plugins.StringValueMetaData;
 import org.jboss.beans.metadata.plugins.ThisValueMetaData;
 import org.jboss.beans.metadata.plugins.ValueMetaDataAware;
@@ -94,7 +93,6 @@
       @XmlElement(name="array", type=AbstractArrayMetaData.class),
       @XmlElement(name="collection", type=AbstractCollectionMetaData.class),
       @XmlElement(name="inject", type=AbstractInjectionValueMetaData.class),
-      @XmlElement(name="search", type= AbstractSearchValueMetaData.class),
       @XmlElement(name="list", type=AbstractListMetaData.class),
       @XmlElement(name="map", type=AbstractMapMetaData.class),
       @XmlElement(name="null", type=AbstractValueMetaData.class),

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -39,12 +39,12 @@
 import org.jboss.beans.metadata.plugins.AbstractAnnotationMetaData;
 import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
 import org.jboss.beans.metadata.plugins.AbstractClassLoaderMetaData;
+import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
 import org.jboss.beans.metadata.plugins.AbstractLazyMetaData;
 import org.jboss.beans.metadata.plugins.AbstractLifecycleMetaData;
 import org.jboss.beans.metadata.plugins.AbstractNamedAliasMetaData;
 import org.jboss.beans.metadata.plugins.AbstractValueMetaData;
 import org.jboss.beans.metadata.plugins.MutableLifecycleHolder;
-import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
 import org.jboss.beans.metadata.spi.AnnotationMetaData;
 import org.jboss.beans.metadata.spi.BeanMetaData;
 import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
@@ -64,6 +64,8 @@
 import org.jboss.util.JBossObject;
 import org.jboss.util.JBossStringBuilder;
 import org.jboss.xb.annotations.JBossXmlSchema;
+import org.jboss.xb.annotations.JBossXmlType;
+import org.jboss.xb.annotations.JBossXmlConstants;
 
 /**
  * An abstract kernel deployment.
@@ -77,8 +79,8 @@
 @JBossXmlSchema(namespace="urn:jboss:bean-deployer:2.0", elementFormDefault=XmlNsForm.QUALIFIED, replacePropertyRefs=false)
 @XmlRootElement(name="deployment")
 @XmlType(name="deploymentType", propOrder={"annotations", "classLoader", "beanFactories", "create", "start", "stop", "destroy", "aliases"})
-public class AbstractKernelDeployment extends JBossObject
-   implements KernelDeployment, MutableLifecycleHolder, Serializable
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_UNORDERED_SEQUENCE)
+public class AbstractKernelDeployment extends JBossObject implements KernelDeployment, MutableLifecycleHolder, Serializable
 {
    private static final long serialVersionUID = 3l;
 

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment10.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment10.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment10.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -28,6 +28,8 @@
 import org.jboss.managed.api.annotation.ManagementObject;
 import org.jboss.managed.api.annotation.ManagementProperties;
 import org.jboss.xb.annotations.JBossXmlSchema;
+import org.jboss.xb.annotations.JBossXmlType;
+import org.jboss.xb.annotations.JBossXmlConstants;
 
 /**
  * An abstract kernel deployment.
@@ -40,6 +42,7 @@
 @JBossXmlSchema(namespace="urn:jboss:bean-deployer", elementFormDefault=XmlNsForm.QUALIFIED)
 @XmlRootElement(name="deployment")
 @XmlType(name="deploymentType", propOrder={"annotations", "classLoader", "beanFactories"})
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_UNORDERED_SEQUENCE)
 public class AbstractKernelDeployment10 extends AbstractKernelDeployment
 {
    private static final long serialVersionUID = 3l;

Added: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/package-info.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/package-info.java	                        (rev 0)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/deployment/package-info.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -0,0 +1,30 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., 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.
+*/
+ at JBossXmlTransients({
+   @JBossXmlTransient(type = JBossObject.class, properties={"classShortName"})
+})
+package org.jboss.kernel.plugins.deployment;
+
+import org.jboss.util.JBossObject;
+import org.jboss.xb.annotations.JBossXmlTransient;
+import org.jboss.xb.annotations.JBossXmlTransients;
+

Modified: projects/kernel/trunk/kernel/src/main/resources/schema/jboss-beans-common_2_0.xsd
===================================================================
--- projects/kernel/trunk/kernel/src/main/resources/schema/jboss-beans-common_2_0.xsd	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/main/resources/schema/jboss-beans-common_2_0.xsd	2009-08-07 15:10:17 UTC (rev 92135)
@@ -84,7 +84,8 @@
       </xsd:annotation>
       <xsd:sequence>
          <xsd:element name="alias" type="aliasType" minOccurs="0" maxOccurs="unbounded"/>
-         <xsd:element name="related-class" type="relatedClassType" minOccurs="0" maxOccurs="unbounded"/>
+         <!--<xsd:element name="related-class" type="relatedClassType" minOccurs="0" maxOccurs="unbounded"/>-->
+         <xsd:element name="annotation" type="annotationType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="classloader" type="classloaderType" minOccurs="0"/>
          <xsd:element name="constructor" type="constructorType" minOccurs="0"/>
          <xsd:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
@@ -95,10 +96,8 @@
          <xsd:element name="supply" type="supplyType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="install" type="installType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="uninstall" type="installType" minOccurs="0" maxOccurs="unbounded"/>
-<!--
-         <xsd:element name="incallback" type="intallCallbackType" minOccurs="0" maxOccurs="unbounded"/>
+         <xsd:element name="incallback" type="installCallbackType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="uncallback" type="uninstallCallbackType" minOccurs="0" maxOccurs="unbounded"/>
--->
       </xsd:sequence>
       <xsd:attribute name="name" type="xsd:string" use="optional"/>
    </xsd:complexType>
@@ -412,23 +411,6 @@
       <xsd:attribute name="search" type="searchTypeType" use="optional" default="default"/>
    </xsd:complexType>
 
-   <xsd:complexType name="searchType">
-      <xsd:annotation>
-         <xsd:documentation>
-           <![CDATA[
-           e.g. Search injection - by scope.
-           <bean name="InjectedIntoMe" ...>
-              <property name="transactionManager"><search bean="someTMbean" type="top"/></property>
-           </bean>
-           ]]>
-         </xsd:documentation>
-      </xsd:annotation>
-      <xsd:attribute name="bean" type="xsd:string" use="required"/>
-      <xsd:attribute name="property" type="xsd:string" use="optional"/>
-      <xsd:attribute name="state" type="controllerStateType" use="optional"/>
-      <xsd:attribute name="type" type="searchTypeType" use="required"/>
-   </xsd:complexType>
-
    <xsd:complexType name="valueFactoryType">
       <xsd:annotation>
          <xsd:documentation>
@@ -694,7 +676,7 @@
          </xsd:documentation>
       </xsd:annotation>
       <xsd:choice>
-         <!--<xsd:element name="bean" type="beanType"/>-->
+         <xsd:element name="bean" type="beanType"/>
          <!--<xsd:element name="lazy" type="lazyType"/>-->
          <xsd:element name="value" type="plainValueType"/>
          <xsd:element name="inject" type="injectionType"/>
@@ -832,9 +814,7 @@
             ]]>
          </xsd:documentation>
       </xsd:annotation>
-      <xsd:choice minOccurs="0" maxOccurs="unbounded">
-         <xsd:group ref="valueGroup"/>
-      </xsd:choice>
+      <xsd:group ref="valueGroup" maxOccurs="unbounded"/>
       <xsd:attribute name="class" type="classNameType" use="optional"/>
       <xsd:attribute name="elementClass" type="classNameType" use="optional"/>      
    </xsd:complexType>

Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/dependency/test/GenericBeanFactoryConstructorDependencyXMLTestCase.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/dependency/test/GenericBeanFactoryConstructorDependencyXMLTestCase.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/dependency/test/GenericBeanFactoryConstructorDependencyXMLTestCase.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -22,6 +22,7 @@
 package org.jboss.test.kernel.dependency.test;
 
 import junit.framework.Test;
+import org.jboss.test.AbstractTestDelegate;
 
 /**
  * Constructor Dependency Test Case.
@@ -40,4 +41,18 @@
    {
       super(name, true);
    }
+
+   /**
+    * Default setup with security manager enabled
+    *
+    * @param clazz the class
+    * @return the delegate
+    * @throws Exception for any error
+    */
+   public static AbstractTestDelegate getDelegate(Class<?> clazz) throws Exception
+   {
+      AbstractTestDelegate delegate = new AbstractTestDelegate(clazz);
+      delegate.enableSecurity = false; // FIXME - hack, before we fix XB security
+      return delegate;
+   }
 }
\ No newline at end of file

Added: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/support/PolicyTestDelegate.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/support/PolicyTestDelegate.java	                        (rev 0)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/support/PolicyTestDelegate.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -0,0 +1,60 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.test.kernel.deployment.xml.support;
+
+import javax.xml.namespace.QName;
+
+import org.jboss.test.kernel.deployment.xml.test.JBossXBTestDelegate;
+import org.jboss.xb.binding.resolver.AbstractMutableSchemaResolver;
+import org.jboss.xb.util.SchemaBindingValidator;
+
+/**
+ * Policy test delegate.
+ *
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public class PolicyTestDelegate extends JBossXBTestDelegate
+{
+   public PolicyTestDelegate(Class<?> clazz)
+   {
+      super(clazz);
+   }
+
+   @Override
+   public void setUp() throws Exception
+   {
+      super.setUp();
+
+      if (resolver instanceof AbstractMutableSchemaResolver)
+      {
+         AbstractMutableSchemaResolver amsr = AbstractMutableSchemaResolver.class.cast(resolver);
+
+         SchemaBindingValidator validator = amsr.getBindingValidator();
+
+         // exclude policy metadata, schema as it's wip
+         //validator.excludeType(new QName("urn:jboss:policy:1.0", "policyType"));
+         //validator.excludeType(new QName("urn:jboss:policy:1.0", "scopeType"));
+         validator.excludeType(new QName("urn:jboss:policy:1.0", "bindingType"));
+         validator.excludeNs("urn:jboss:bean-deployer:2.0");
+      }
+   }
+}

Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/AbstractPolicyTest.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/AbstractPolicyTest.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/AbstractPolicyTest.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -24,6 +24,8 @@
 import org.jboss.beans.metadata.plugins.policy.AbstractBindingMetaData;
 import org.jboss.beans.metadata.plugins.policy.AbstractPolicyMetaData;
 import org.jboss.beans.metadata.plugins.policy.AbstractScopeMetaData;
+import org.jboss.test.AbstractTestDelegate;
+import org.jboss.test.kernel.deployment.xml.support.PolicyTestDelegate;
 
 /**
  * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
@@ -35,6 +37,23 @@
       super(name);
    }
 
+   /**
+    * Setup the test delegate
+    *
+    * @param clazz the class
+    * @return the delegate
+    * @throws Exception for any error
+    */
+   public static AbstractTestDelegate getDelegate(Class<?> clazz) throws Exception
+   {
+      return new PolicyTestDelegate(clazz);
+   }
+
+   protected PolicyTestDelegate getJBossXBDelegate()
+   {
+      return (PolicyTestDelegate) getDelegate();
+   }
+
    private <T> T unmarshal(Class<T> expected) throws Exception
    {
       return unmarshalObject(expected);

Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/JBossXBTestDelegate.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/JBossXBTestDelegate.java	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/xml/test/JBossXBTestDelegate.java	2009-08-07 15:10:17 UTC (rev 92135)
@@ -21,12 +21,16 @@
 */
 package org.jboss.test.kernel.deployment.xml.test;
 
+import javax.xml.namespace.QName;
+
 import org.jboss.test.AbstractTestDelegate;
 import org.jboss.xb.binding.Unmarshaller;
 import org.jboss.xb.binding.UnmarshallerFactory;
+import org.jboss.xb.binding.resolver.AbstractMutableSchemaResolver;
 import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
 import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
 import org.jboss.xb.binding.sunday.unmarshalling.SingletonSchemaResolverFactory;
+import org.jboss.xb.util.DefaultSchemaBindingValidator;
 
 /**
  * JBossXBTestDelegate.
@@ -41,8 +45,11 @@
    protected UnmarshallerFactory unmarshallerFactory;
 
    /** The resolver */
-   protected SchemaBindingResolver resolver = SingletonSchemaResolverFactory.getInstance().getSchemaBindingResolver();
+   protected SchemaBindingResolver resolver;
 
+   /** Previous binding validation */
+   private boolean validateBinding;
+
    /**
     * Create a new JBossXBTestDelegate.
     *
@@ -57,9 +64,43 @@
    public void setUp() throws Exception
    {
       super.setUp();
+
       unmarshallerFactory = UnmarshallerFactory.newInstance();
+      resolver = SingletonSchemaResolverFactory.getInstance().getSchemaBindingResolver();
+
+      if (resolver instanceof AbstractMutableSchemaResolver)
+      {
+         AbstractMutableSchemaResolver amsr = AbstractMutableSchemaResolver.class.cast(resolver);
+         validateBinding = amsr.isValidateBinding();
+         amsr.setValidateBinding(true);
+
+         DefaultSchemaBindingValidator validator = new DefaultSchemaBindingValidator(amsr);
+         amsr.setBindingValidator(validator);
+         validator.enableLogging(true); // enable logging
+         // exclude types that are only in .xsd file
+         validator.excludeType(new QName("urn:jboss:bean-deployer:2.0", "classLoaderValueType"));
+         validator.excludeType(new QName("urn:jboss:bean-deployer:2.0", "baseCollectionType"));
+         validator.excludeType(new QName("urn:jboss:bean-deployer:2.0", "abstractBeanfactoryType"));
+         validator.excludeType(new QName("urn:jboss:bean-deployer:2.0", "namedValueType"));
+         validator.excludeType(new QName("urn:jboss:bean-deployer:2.0", "factoryType"));
+         validator.excludeType(new QName("urn:jboss:bean-deployer:2.0", "annotatedValueType"));
+         validator.excludeType(new QName("urn:jboss:bean-deployer:2.0", "valueType")); // should exist?
+      }
    }
 
+   @Override
+   public void tearDown() throws Exception
+   {
+      if (resolver instanceof AbstractMutableSchemaResolver)
+      {
+         AbstractMutableSchemaResolver amsr = AbstractMutableSchemaResolver.class.cast(resolver);
+         amsr.setValidateBinding(validateBinding);         
+         amsr.setBindingValidator(null);
+      }
+
+      super.tearDown();
+   }
+
    /**
     * Unmarshal an object
     *

Modified: projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/deployment/test/ScopingOverrideTestCase.xml
===================================================================
--- projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/deployment/test/ScopingOverrideTestCase.xml	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/deployment/test/ScopingOverrideTestCase.xml	2009-08-07 15:10:17 UTC (rev 92135)
@@ -6,7 +6,7 @@
    <bean name="deploy1" class="org.jboss.test.kernel.deployment.support.SimpleObjectWithBean">
       <annotation>@org.jboss.metadata.plugins.scope.ApplicationScope("testApp")</annotation>
       <annotation>@org.jboss.metadata.plugins.scope.DeploymentScope("deployment1")</annotation>
-      <property name="simpleBean"><search bean="simple" type="local"/></property>
+      <property name="simpleBean"><inject bean="simple" search="local"/></property>
    </bean>
 
    <bean name="deploy2" class="org.jboss.test.kernel.deployment.support.SimpleObjectWithBean">

Modified: projects/kernel/trunk/pom.xml
===================================================================
--- projects/kernel/trunk/pom.xml	2009-08-07 14:38:12 UTC (rev 92134)
+++ projects/kernel/trunk/pom.xml	2009-08-07 15:10:17 UTC (rev 92135)
@@ -36,7 +36,7 @@
     <version.jboss.common.core>2.2.13.GA</version.jboss.common.core>
     <version.jboss.logging.spi>2.0.5.GA</version.jboss.logging.spi>
     <version.jboss.logging.log4j>2.0.5.GA</version.jboss.logging.log4j>
-    <version.jbossxb>2.0.1.GA</version.jbossxb>
+    <version.jbossxb>2.0.2-SNAPSHOT</version.jbossxb>
     <version.jboss.man>2.1.1.CR1</version.jboss.man>
     <version.jboss.vfs>2.1.2.GA</version.jboss.vfs>
     <version.javassist>3.10.0.GA</version.javassist>




More information about the jboss-cvs-commits mailing list