You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by ek...@apache.org on 2005/09/19 16:32:40 UTC

svn commit: r290172 - in /beehive/trunk/netui: src/pageflow/org/apache/beehive/netui/pageflow/internal/ src/util/org/apache/beehive/netui/util/config/bean/ src/util/org/apache/beehive/netui/util/config/parser/ test/webapps/jsf/ test/webapps/urlTemplates/

Author: ekoneil
Date: Mon Sep 19 07:32:36 2005
New Revision: 290172

URL: http://svn.apache.org/viewcvs?rev=290172&view=rev
Log:
Two more NetUI bug fixes and changes to the urlTemplate and jsfWeb webapp builds to start copying XMLBeans.

BEEHIVE-938  	 PageFlowConfig from beehive-netui-config, max-nesting-stack-depth is set incorrectly
BEEHIVE-937  	 Add validation to the beehive-url-template-config.xml file processing

BB: self
Test: NetUI DRT / urlTemplates / jsfWeb pass


Modified:
    beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java
    beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java
    beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java
    beehive/trunk/netui/test/webapps/jsf/build.xml
    beehive/trunk/netui/test/webapps/urlTemplates/build.xml

Modified: beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java
URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java?rev=290172&r1=290171&r2=290172&view=diff
==============================================================================
--- beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java (original)
+++ beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java Mon Sep 19 07:32:36 2005
@@ -20,9 +20,12 @@
 import org.apache.beehive.netui.core.urltemplates.URLTemplate;
 import org.apache.beehive.netui.core.urltemplates.URLTemplates;
 import org.apache.beehive.netui.core.urltemplates.URLTemplatesFactory;
-import org.apache.beehive.netui.util.internal.InternalStringBuilder;
 import org.apache.beehive.netui.util.logging.Logger;
 import org.apache.beehive.netui.util.xml.DomUtils;
+import org.apache.beehive.netui.util.xml.XmlInputStreamResolver;
+import org.apache.beehive.netui.util.xml.validation.SchemaValidationException;
+import org.apache.beehive.netui.util.xml.validation.SchemaValidator;
+import org.apache.beehive.netui.util.xml.validation.SchemaValidatorFactory;
 
 import java.io.InputStream;
 import java.io.IOException;
@@ -31,6 +34,8 @@
 import javax.servlet.ServletContext;
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.xml.sax.SAXException;
@@ -51,6 +56,18 @@
     private static final String URL_TEMPLATE_REF_GROUP = "url-template-ref-group";
     private static final String VALUE = "value";
 
+    private static final String CONFIG_SCHEMA = "org/apache/beehive/netui/core/urltemplates/schema/url-template-config.xsd";
+
+    private static final XmlInputStreamResolver SCHEMA_RESOLVER = new XmlInputStreamResolver() {
+        public String getResourcePath() {
+            return CONFIG_SCHEMA;
+        }
+
+        public InputStream getInputStream() {
+            return DefaultURLTemplatesFactory.class.getClassLoader().getResourceAsStream(getResourcePath());
+        }
+    };
+
     // The actual URL templates and template ref groups
     private URLTemplates _urlTemplates;
 
@@ -114,19 +131,35 @@
     public void load( ServletContext servletContext )
     {
         _urlTemplates = new URLTemplates();
-        InputStream stream = null;
+        InputStream xmlInputStream = null;
+        InputStream xsdInputStream = null;
 
         try
         {
-            stream = servletContext.getResourceAsStream( _configFilePath );
-            if ( stream != null )
+            xmlInputStream = servletContext.getResourceAsStream( _configFilePath );
+            if ( xmlInputStream != null )
             {
+                // Validate the XML against the schema
+                xsdInputStream = SCHEMA_RESOLVER.getInputStream();
+                SchemaValidator schemaValidator = SchemaValidatorFactory.getInstance();
+                schemaValidator.validate(xsdInputStream, xmlInputStream);
+                try
+                {
+                    if ( xmlInputStream != null )
+                        xmlInputStream.close();
+                }
+                catch ( IOException io )
+                {
+                    _log.error( "An exception occurred closing the input stream for \"" + _configFilePath + "\"", io );
+                }
+
+                // Parse, then load the templates and template ref groups
+                xmlInputStream = servletContext.getResourceAsStream( _configFilePath );
+
                 DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
                 DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
-                Document document = dBuilder.parse( stream );
+                Document document = dBuilder.parse( xmlInputStream );
                 Element root = document.getDocumentElement();
-
-                // Load the templates and template ref groups
                 loadTemplates( root );
                 loadTemplateRefGroups( root );
             }
@@ -134,19 +167,18 @@
             {
                 if ( _log.isInfoEnabled() )
                 {
-                    String contextName = servletContext.getServletContextName();
-                    InternalStringBuilder message = new InternalStringBuilder();
-                    if ( contextName != null )
-                    {
-                        message.append( contextName ).append( " - " );
-                    }
-
-                    message.append( "Running without URL template descriptor, " );
-                    message.append( _configFilePath );
-                    _log.info( message.toString() );
+                    _log.info( "Running without URL template descriptor, " + _configFilePath );
                 }
             }
         }
+        catch ( SchemaValidationException sve )
+        {
+            _log.error("Validation errors occurred parsing the config file \"" + _configFilePath + "\".  Cause: " + sve, sve);
+        }
+        catch ( ParserConfigurationException pce )
+        {
+            _log.error( "Problem loading URL template descriptor file " + _configFilePath, pce );
+        }
         catch ( SAXException se )
         {
             _log.error( "Problem parsing URL template descriptor in " + _configFilePath, se );
@@ -155,23 +187,11 @@
         {
             _log.error( "Problem reading URL template descriptor file " + _configFilePath, ioe );
         }
-        catch ( Exception e )
-        {
-            _log.error( "Problem loading URL template descriptor file " + _configFilePath, e );
-        }
         finally
         {
-            // Close the stream
-            if ( stream != null )
-            {
-                try
-                {
-                    stream.close();
-                }
-                catch ( Exception ignore )
-                {
-                }
-            }
+            // Close the streams
+            try { if ( xmlInputStream != null ) xmlInputStream.close(); } catch ( Exception ignore ) {}
+            try { if ( xsdInputStream != null ) xsdInputStream.close(); } catch( IOException ignore ) {}
         }
     }
 

Modified: beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java
URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java?rev=290172&r1=290171&r2=290172&view=diff
==============================================================================
--- beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java (original)
+++ beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java Mon Sep 19 07:32:36 2005
@@ -70,7 +70,7 @@
         if(maxForwardsPerRequest != null)
             _maxForwardsPerRequest = maxForwardsPerRequest.intValue();
         if(maxNestingStackDepth != null)
-            _maxForwardsPerRequest = maxNestingStackDepth.intValue();
+            _maxNestingStackDepth = maxNestingStackDepth.intValue();
         if(multipartHandler != null)
             _multipartHandler = multipartHandler;
         if(preventCache != null)

Modified: beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java
URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java?rev=290172&r1=290171&r2=290172&view=diff
==============================================================================
--- beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java (original)
+++ beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java Mon Sep 19 07:32:36 2005
@@ -138,10 +138,12 @@
                     xmlInputStream.close();
             }
             catch(IOException io) {
-                throw new ConfigInitializationException("An exception occurred closing the input stream for \"" + theXmlResolver.getResourcePath());
+                throw new ConfigInitializationException("An exception occurred closing the input stream for \"" +
+                    theXmlResolver.getResourcePath() + "\"");
             }
 
-            configBean = parse(theXmlResolver.getResourcePath(), theXmlResolver.getInputStream());
+            xmlInputStream = theXmlResolver.getInputStream();
+            configBean = parse(theXmlResolver.getResourcePath(), xmlInputStream);
         }
         finally {
             try {if(xmlInputStream != null) xmlInputStream.close();} catch(IOException ignore) {}

Modified: beehive/trunk/netui/test/webapps/jsf/build.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/test/webapps/jsf/build.xml?rev=290172&r1=290171&r2=290172&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/jsf/build.xml (original)
+++ beehive/trunk/netui/test/webapps/jsf/build.xml Mon Sep 19 07:32:36 2005
@@ -38,6 +38,12 @@
               tofile="${webapp.dir}/WEB-INF/web.xml"
               overwrite="true" failonerror="true"/>
 
+        <!-- deploy XMLBeans which isn't included in the default webapp template -->
+        <copy todir="${webapp.dir}/WEB-INF/lib">
+            <fileset refid="xbean.fileset"/>
+            <fileset refid="jsr173.fileset"/>
+        </copy>
+
         <build-webapp webappDir="${webapp.dir}"/>
 
         <!-- Touch all JSPs to ensure that they're compiled.  When switching between MyFaces and the JSF RI,
@@ -120,7 +126,9 @@
         </ant>
     </target>
 
-    <target name="bvt.jsf-ri" description="Run the bvt suite against the JSF Reference Implementation with full server start / stop support." depends="clean,build.jsf-ri">
+    <target name="bvt.jsf-ri" 
+            description="Run the bvt suite against the JSF Reference Implementation with full server start / stop support." 
+            depends="clean,build.jsf-ri">
         <ant antfile="${test.dir}/ant/testRecorder.xml" inheritAll="false" target="server.test">
             <property name="app.build.file" location="${app.dir}/jsf/build.xml"/>
             <property name="suite.name" value="bvt"/>
@@ -133,7 +141,9 @@
         </ant>
     </target>
 
-    <target name="bvt.myfaces" description="Run the bvt suite against the MyFaces with full server start / stop support." depends="clean,build.myfaces">
+    <target name="bvt.myfaces" 
+            description="Run the bvt suite against the MyFaces with full server start / stop support." 
+            depends="clean,build.myfaces">
         <ant antfile="${test.dir}/ant/testRecorder.xml" inheritAll="false" target="server.test">
             <property name="app.build.file" location="${app.dir}/jsf/build.xml"/>
             <property name="suite.name" value="bvt"/>
@@ -144,6 +154,10 @@
             <property name="formatter.type" value="xml"/>           
             <property name="formatter.usefile" value="true"/> 
         </ant>
+    </target>
+
+    <target name="bvt" description="Default JSF + NetUI test webapp">
+        <antcall target="bvt.myfaces"/>
     </target>
 
     <target name="ensure.deployed" description="Deploy webapp">

Modified: beehive/trunk/netui/test/webapps/urlTemplates/build.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/test/webapps/urlTemplates/build.xml?rev=290172&r1=290171&r2=290172&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/urlTemplates/build.xml (original)
+++ beehive/trunk/netui/test/webapps/urlTemplates/build.xml Mon Sep 19 07:32:36 2005
@@ -52,6 +52,12 @@
             <property name="webapp.file" location="${app.dir}/urlTemplates/testRecorder/config/testRecorder-webapp.xml"/>
             <property name="struts.version" value="${struts.version}"/>
         </ant>
+
+        <!-- deploy XMLBeans which isn't included in the default webapp template -->
+        <copy todir="${webapp.dir}/WEB-INF/lib">
+            <fileset refid="xbean.fileset"/>
+            <fileset refid="jsr173.fileset"/>
+        </copy>
     </target>
 
     <target name="clean" description="Clean webapp">



Re: svn commit: r290172 - in /beehive/trunk/netui: src/pageflow/org/apache/beehive/netui/pageflow/internal/ src/util/org/apache/beehive/netui/util/config/bean/ src/util/org/apache/beehive/netui/util/config/parser/ test/webapps/jsf/ test/webapps/urlTe

Posted by Eddie O'Neil <ek...@gmail.com>.
  Forgot attributions on these; apologies.

  BEEHIVE-938 patch from Krista Baker
  BEEHIVE-937 patch from Carlin Rogers

Thanks for the help...



On 9/19/05, ekoneil@apache.org <ek...@apache.org> wrote:
> Author: ekoneil
> Date: Mon Sep 19 07:32:36 2005
> New Revision: 290172
> 
> URL: http://svn.apache.org/viewcvs?rev=290172&view=rev
> Log:
> Two more NetUI bug fixes and changes to the urlTemplate and jsfWeb webapp builds to start copying XMLBeans.
> 
> BEEHIVE-938      PageFlowConfig from beehive-netui-config, max-nesting-stack-depth is set incorrectly
> BEEHIVE-937      Add validation to the beehive-url-template-config.xml file processing
> 
> BB: self
> Test: NetUI DRT / urlTemplates / jsfWeb pass
> 
> 
> Modified:
>     beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java
>     beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java
>     beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java
>     beehive/trunk/netui/test/webapps/jsf/build.xml
>     beehive/trunk/netui/test/webapps/urlTemplates/build.xml
> 
> Modified: beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java
> URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java?rev=290172&r1=290171&r2=290172&view=diff
> ==============================================================================
> --- beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java (original)
> +++ beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/DefaultURLTemplatesFactory.java Mon Sep 19 07:32:36 2005
> @@ -20,9 +20,12 @@
>  import org.apache.beehive.netui.core.urltemplates.URLTemplate;
>  import org.apache.beehive.netui.core.urltemplates.URLTemplates;
>  import org.apache.beehive.netui.core.urltemplates.URLTemplatesFactory;
> -import org.apache.beehive.netui.util.internal.InternalStringBuilder;
>  import org.apache.beehive.netui.util.logging.Logger;
>  import org.apache.beehive.netui.util.xml.DomUtils;
> +import org.apache.beehive.netui.util.xml.XmlInputStreamResolver;
> +import org.apache.beehive.netui.util.xml.validation.SchemaValidationException;
> +import org.apache.beehive.netui.util.xml.validation.SchemaValidator;
> +import org.apache.beehive.netui.util.xml.validation.SchemaValidatorFactory;
> 
>  import java.io.InputStream;
>  import java.io.IOException;
> @@ -31,6 +34,8 @@
>  import javax.servlet.ServletContext;
>  import javax.xml.parsers.DocumentBuilder;
>  import javax.xml.parsers.DocumentBuilderFactory;
> +import javax.xml.parsers.ParserConfigurationException;
> +
>  import org.w3c.dom.Document;
>  import org.w3c.dom.Element;
>  import org.xml.sax.SAXException;
> @@ -51,6 +56,18 @@
>      private static final String URL_TEMPLATE_REF_GROUP = "url-template-ref-group";
>      private static final String VALUE = "value";
> 
> +    private static final String CONFIG_SCHEMA = "org/apache/beehive/netui/core/urltemplates/schema/url-template-config.xsd";
> +
> +    private static final XmlInputStreamResolver SCHEMA_RESOLVER = new XmlInputStreamResolver() {
> +        public String getResourcePath() {
> +            return CONFIG_SCHEMA;
> +        }
> +
> +        public InputStream getInputStream() {
> +            return DefaultURLTemplatesFactory.class.getClassLoader().getResourceAsStream(getResourcePath());
> +        }
> +    };
> +
>      // The actual URL templates and template ref groups
>      private URLTemplates _urlTemplates;
> 
> @@ -114,19 +131,35 @@
>      public void load( ServletContext servletContext )
>      {
>          _urlTemplates = new URLTemplates();
> -        InputStream stream = null;
> +        InputStream xmlInputStream = null;
> +        InputStream xsdInputStream = null;
> 
>          try
>          {
> -            stream = servletContext.getResourceAsStream( _configFilePath );
> -            if ( stream != null )
> +            xmlInputStream = servletContext.getResourceAsStream( _configFilePath );
> +            if ( xmlInputStream != null )
>              {
> +                // Validate the XML against the schema
> +                xsdInputStream = SCHEMA_RESOLVER.getInputStream();
> +                SchemaValidator schemaValidator = SchemaValidatorFactory.getInstance();
> +                schemaValidator.validate(xsdInputStream, xmlInputStream);
> +                try
> +                {
> +                    if ( xmlInputStream != null )
> +                        xmlInputStream.close();
> +                }
> +                catch ( IOException io )
> +                {
> +                    _log.error( "An exception occurred closing the input stream for \"" + _configFilePath + "\"", io );
> +                }
> +
> +                // Parse, then load the templates and template ref groups
> +                xmlInputStream = servletContext.getResourceAsStream( _configFilePath );
> +
>                  DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
>                  DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
> -                Document document = dBuilder.parse( stream );
> +                Document document = dBuilder.parse( xmlInputStream );
>                  Element root = document.getDocumentElement();
> -
> -                // Load the templates and template ref groups
>                  loadTemplates( root );
>                  loadTemplateRefGroups( root );
>              }
> @@ -134,19 +167,18 @@
>              {
>                  if ( _log.isInfoEnabled() )
>                  {
> -                    String contextName = servletContext.getServletContextName();
> -                    InternalStringBuilder message = new InternalStringBuilder();
> -                    if ( contextName != null )
> -                    {
> -                        message.append( contextName ).append( " - " );
> -                    }
> -
> -                    message.append( "Running without URL template descriptor, " );
> -                    message.append( _configFilePath );
> -                    _log.info( message.toString() );
> +                    _log.info( "Running without URL template descriptor, " + _configFilePath );
>                  }
>              }
>          }
> +        catch ( SchemaValidationException sve )
> +        {
> +            _log.error("Validation errors occurred parsing the config file \"" + _configFilePath + "\".  Cause: " + sve, sve);
> +        }
> +        catch ( ParserConfigurationException pce )
> +        {
> +            _log.error( "Problem loading URL template descriptor file " + _configFilePath, pce );
> +        }
>          catch ( SAXException se )
>          {
>              _log.error( "Problem parsing URL template descriptor in " + _configFilePath, se );
> @@ -155,23 +187,11 @@
>          {
>              _log.error( "Problem reading URL template descriptor file " + _configFilePath, ioe );
>          }
> -        catch ( Exception e )
> -        {
> -            _log.error( "Problem loading URL template descriptor file " + _configFilePath, e );
> -        }
>          finally
>          {
> -            // Close the stream
> -            if ( stream != null )
> -            {
> -                try
> -                {
> -                    stream.close();
> -                }
> -                catch ( Exception ignore )
> -                {
> -                }
> -            }
> +            // Close the streams
> +            try { if ( xmlInputStream != null ) xmlInputStream.close(); } catch ( Exception ignore ) {}
> +            try { if ( xsdInputStream != null ) xsdInputStream.close(); } catch( IOException ignore ) {}
>          }
>      }
> 
> 
> Modified: beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java
> URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java?rev=290172&r1=290171&r2=290172&view=diff
> ==============================================================================
> --- beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java (original)
> +++ beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/bean/PageFlowConfig.java Mon Sep 19 07:32:36 2005
> @@ -70,7 +70,7 @@
>          if(maxForwardsPerRequest != null)
>              _maxForwardsPerRequest = maxForwardsPerRequest.intValue();
>          if(maxNestingStackDepth != null)
> -            _maxForwardsPerRequest = maxNestingStackDepth.intValue();
> +            _maxNestingStackDepth = maxNestingStackDepth.intValue();
>          if(multipartHandler != null)
>              _multipartHandler = multipartHandler;
>          if(preventCache != null)
> 
> Modified: beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java
> URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java?rev=290172&r1=290171&r2=290172&view=diff
> ==============================================================================
> --- beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java (original)
> +++ beehive/trunk/netui/src/util/org/apache/beehive/netui/util/config/parser/NetUIConfigParser.java Mon Sep 19 07:32:36 2005
> @@ -138,10 +138,12 @@
>                      xmlInputStream.close();
>              }
>              catch(IOException io) {
> -                throw new ConfigInitializationException("An exception occurred closing the input stream for \"" + theXmlResolver.getResourcePath());
> +                throw new ConfigInitializationException("An exception occurred closing the input stream for \"" +
> +                    theXmlResolver.getResourcePath() + "\"");
>              }
> 
> -            configBean = parse(theXmlResolver.getResourcePath(), theXmlResolver.getInputStream());
> +            xmlInputStream = theXmlResolver.getInputStream();
> +            configBean = parse(theXmlResolver.getResourcePath(), xmlInputStream);
>          }
>          finally {
>              try {if(xmlInputStream != null) xmlInputStream.close();} catch(IOException ignore) {}
> 
> Modified: beehive/trunk/netui/test/webapps/jsf/build.xml
> URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/test/webapps/jsf/build.xml?rev=290172&r1=290171&r2=290172&view=diff
> ==============================================================================
> --- beehive/trunk/netui/test/webapps/jsf/build.xml (original)
> +++ beehive/trunk/netui/test/webapps/jsf/build.xml Mon Sep 19 07:32:36 2005
> @@ -38,6 +38,12 @@
>                tofile="${webapp.dir}/WEB-INF/web.xml"
>                overwrite="true" failonerror="true"/>
> 
> +        <!-- deploy XMLBeans which isn't included in the default webapp template -->
> +        <copy todir="${webapp.dir}/WEB-INF/lib">
> +            <fileset refid="xbean.fileset"/>
> +            <fileset refid="jsr173.fileset"/>
> +        </copy>
> +
>          <build-webapp webappDir="${webapp.dir}"/>
> 
>          <!-- Touch all JSPs to ensure that they're compiled.  When switching between MyFaces and the JSF RI,
> @@ -120,7 +126,9 @@
>          </ant>
>      </target>
> 
> -    <target name="bvt.jsf-ri" description="Run the bvt suite against the JSF Reference Implementation with full server start / stop support." depends="clean,build.jsf-ri">
> +    <target name="bvt.jsf-ri"
> +            description="Run the bvt suite against the JSF Reference Implementation with full server start / stop support."
> +            depends="clean,build.jsf-ri">
>          <ant antfile="${test.dir}/ant/testRecorder.xml" inheritAll="false" target="server.test">
>              <property name="app.build.file" location="${app.dir}/jsf/build.xml"/>
>              <property name="suite.name" value="bvt"/>
> @@ -133,7 +141,9 @@
>          </ant>
>      </target>
> 
> -    <target name="bvt.myfaces" description="Run the bvt suite against the MyFaces with full server start / stop support." depends="clean,build.myfaces">
> +    <target name="bvt.myfaces"
> +            description="Run the bvt suite against the MyFaces with full server start / stop support."
> +            depends="clean,build.myfaces">
>          <ant antfile="${test.dir}/ant/testRecorder.xml" inheritAll="false" target="server.test">
>              <property name="app.build.file" location="${app.dir}/jsf/build.xml"/>
>              <property name="suite.name" value="bvt"/>
> @@ -144,6 +154,10 @@
>              <property name="formatter.type" value="xml"/>
>              <property name="formatter.usefile" value="true"/>
>          </ant>
> +    </target>
> +
> +    <target name="bvt" description="Default JSF + NetUI test webapp">
> +        <antcall target="bvt.myfaces"/>
>      </target>
> 
>      <target name="ensure.deployed" description="Deploy webapp">
> 
> Modified: beehive/trunk/netui/test/webapps/urlTemplates/build.xml
> URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/test/webapps/urlTemplates/build.xml?rev=290172&r1=290171&r2=290172&view=diff
> ==============================================================================
> --- beehive/trunk/netui/test/webapps/urlTemplates/build.xml (original)
> +++ beehive/trunk/netui/test/webapps/urlTemplates/build.xml Mon Sep 19 07:32:36 2005
> @@ -52,6 +52,12 @@
>              <property name="webapp.file" location="${app.dir}/urlTemplates/testRecorder/config/testRecorder-webapp.xml"/>
>              <property name="struts.version" value="${struts.version}"/>
>          </ant>
> +
> +        <!-- deploy XMLBeans which isn't included in the default webapp template -->
> +        <copy todir="${webapp.dir}/WEB-INF/lib">
> +            <fileset refid="xbean.fileset"/>
> +            <fileset refid="jsr173.fileset"/>
> +        </copy>
>      </target>
> 
>      <target name="clean" description="Clean webapp">
> 
> 
>