[jboss-svn-commits] JBL Code SVN: r26088 - in labs/jbosstm/workspace/interop/WSTFSC07-interop: src/com/jboss/transaction/wstf/test and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Apr 17 01:32:55 EDT 2009


Author: istudens at redhat.com
Date: 2009-04-17 01:32:55 -0400 (Fri, 17 Apr 2009)
New Revision: 26088

Added:
   labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/FullTestResult.java
   labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/XMLResultsServlet.java
Modified:
   labs/jbosstm/workspace/interop/WSTFSC07-interop/build.xml
   labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestConstants.java
   labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestRunner.java
   labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestServlet.java
   labs/jbosstm/workspace/interop/WSTFSC07-interop/web.xml
Log:
JBQA-2076, results can be outputted even in XML format now

Modified: labs/jbosstm/workspace/interop/WSTFSC07-interop/build.xml
===================================================================
--- labs/jbosstm/workspace/interop/WSTFSC07-interop/build.xml	2009-04-17 05:29:03 UTC (rev 26087)
+++ labs/jbosstm/workspace/interop/WSTFSC07-interop/build.xml	2009-04-17 05:32:55 UTC (rev 26088)
@@ -9,8 +9,9 @@
 	<property name="host" value="localhost"/>
 	<property name="port" value="8080"/>
 	
-	<property name="jboss.deploy.dir" location="${env.JBOSS_HOME}/server/default/deploy"/>
-	
+	<property name="jboss.dir" location="${env.JBOSS_HOME}"/>
+	<property name="jboss.deploy.dir" location="${jboss.dir}/server/default/deploy"/>
+
 	<property name="build.dir" location="build"/>
 	<property name="build.classes.dir" location="${build.dir}/classes"/>
 	<property name="build.lib.dir" location="${build.dir}/lib"/>
@@ -18,12 +19,14 @@
 	<property name="build.webxml.file" location="${build.lib.dir}/web.xml"/>
 	
 	<property name="src.dir" location="src"/>
-    <property name="dd.dir" location="dd/"/>
+	<property name="dd.dir" location="dd/"/>
 	<property name="webxml.file" location="web.xml"/>
 	<property name="lib.dir" location="lib"/>
 	<property name="web.dir" location="web"/>
 	
-	<property name="jboss.client.lib.dir" location="${env.JBOSS_HOME}/client"/>
+	<property name="jboss.client.lib.dir" location="${jboss.dir}/client"/>
+	<property name="jboss.lib.dir" location="${jboss.dir}/lib"/>
+	<property name="jboss.common.lib.dir" location="${jboss.dir}/common/lib"/>
 	<!-- export XTS_HOME=/home/adinn/jboss/jbossts/trunk/XTS/xts-install -->
 	<property name="xts.lib.dir" location="${env.XTS_HOME}/lib"/>
 	<property name="xts.ext.lib.dir" location="${xts.lib.dir}/ext"/>
@@ -32,11 +35,13 @@
 	<property name="dist.compile.libs" value="ws-c.jar ws-t.jar wscf.jar wstx.jar wsas.jar jbossjta.jar jbossts-common.jar stax-api-1.0.jar junit-3.8.1.jar saxon8.jar"/>
 	-->
     <property name="xts11.compile.libs" value="ws-c11.jar ws-t11.jar wscf11.jar wstx11.jar"/>
-    <property name="xts.compile.libs" value="ws-c.jar ws-t.jar wscf.jar wstx.jar wsas.jar"/>
+    <property name="xts.compile.libs" value="jbossxts-api.jar ws-c.jar ws-t.jar wscf.jar wstx.jar wsas.jar"/>
 	<property name="xts.ext.compile.libs" value="jbossjta.jar"/>
 	<property name="jboss.compile.client.libs" value="jaxb-api.jar jboss-javaee.jar jbossws-native-jaxrpc.jar
             jbossws-native-jaxws.jar jbossws-client.jar stax-api.jar jbossws-native-saaj.jar
             jbossws-native-jaxws-ext.jar jbossws-native-core.jar jbossws-common.jar"/>
+	<property name="jboss.compile.lib.jars" value="dom4j.jar"/>
+	<property name="jboss.compile.common.lib.jars" value="servlet-api.jar"/>
 
 	<property name="dist.compile.libs" value="junit.jar saxon.jar"/>
 
@@ -55,6 +60,8 @@
 		<fileset dir="${xts.lib.dir}" includes="${dist.xts.libs}"/>
 		<fileset dir="${xts.ext.lib.dir}" includes="${dist.xts.ext.libs}"/>
 		<fileset dir="${jboss.client.lib.dir}" includes="${jboss.compile.client.libs}"/>
+		<fileset dir="${jboss.lib.dir}" includes="${jboss.compile.lib.jars}"/>
+		<fileset dir="${jboss.common.lib.dir}" includes="${jboss.compile.common.lib.jars}"/>
 	</path>
 	<property name="classpath" refid="classpath"/>
 	

Added: labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/FullTestResult.java
===================================================================
--- labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/FullTestResult.java	                        (rev 0)
+++ labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/FullTestResult.java	2009-04-17 05:32:55 UTC (rev 26088)
@@ -0,0 +1,124 @@
+package com.jboss.transaction.wstf.test;
+
+import junit.framework.Test;
+import junit.framework.TestResult;
+import junit.framework.AssertionFailedError;
+
+import java.util.List;
+import java.util.LinkedList;
+
+/**
+ * TestResult which holds list of passed tests, not only failed
+ * or error tests, and time of executions of them.
+ * @author <a href="mailto:istudens at redhat.com">Ivo Studensky</a>
+ * @version <tt>$Revision$</tt>
+ */
+public class FullTestResult extends TestResult
+{
+   private List _passedTests;
+   private List _failedTests;
+   private List _errorTests;
+
+   private long                 _startTime            = 0;
+   private boolean              _failed               = false;
+   private boolean              _error                = false;
+   private AssertionFailedError _assertionFailedError = null;
+   private Throwable            _throwable            = null;
+
+   public FullTestResult()
+   {
+      super();
+
+      _passedTests        = new LinkedList();
+      _failedTests        = new LinkedList();
+      _errorTests         = new LinkedList();
+   }
+
+   public List getPassedTests()
+   {
+      return _passedTests;
+   }
+
+   public List getFailedTests()
+   {
+      return _failedTests;
+   }
+
+   public List getErrorTests()
+   {
+      return _errorTests;
+   }
+
+   /*-----------  OVERWRITES  ----------*/
+   public void startTest(Test test)
+   {
+      super.startTest(test);
+
+      _startTime            = System.currentTimeMillis();
+      _failed               = false;
+      _error                = false;
+      _assertionFailedError = null;
+      _throwable            = null;
+   }
+
+   public void addError(Test test, Throwable throwable)
+   {
+      _error     = true;
+      _throwable = throwable;
+   }
+
+   public void addFailure(Test test, AssertionFailedError assertionFailedError)
+   {
+      _failed               = true;
+      _assertionFailedError = assertionFailedError;
+   }
+
+   public void endTest(Test test)
+   {
+      if (_failed)
+      {
+          FailedTest failedTest           = new FailedTest();
+          failedTest.test                 = test;
+          failedTest.duration             = System.currentTimeMillis() - _startTime;
+          failedTest.assertionFailedError = _assertionFailedError;
+          _failedTests.add(failedTest);
+      }
+      else if (_error)
+      {
+          ErrorTest errorTest = new ErrorTest();
+          errorTest.test      = test;
+          errorTest.duration  = System.currentTimeMillis() - _startTime;
+          errorTest.throwable = _throwable;
+          _errorTests.add(errorTest);
+      }
+      else
+      {
+          PassedTest passedTest = new PassedTest();
+          passedTest.test       = test;
+          passedTest.duration   = System.currentTimeMillis() - _startTime;
+          _passedTests.add(passedTest);
+      }
+   }
+
+   /*----------   SUBCLASSES   -----------*/
+   public class PassedTest
+   {
+      public Test test;
+      public long duration;
+   }
+
+   public class FailedTest
+   {
+      public Test                 test;
+      public long                 duration;
+      public AssertionFailedError assertionFailedError;
+   }
+
+   public class ErrorTest
+   {
+      public Test      test;
+      public long      duration;
+      public Throwable throwable;
+   }
+
+}
\ No newline at end of file

Modified: labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestConstants.java
===================================================================
--- labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestConstants.java	2009-04-17 05:29:03 UTC (rev 26087)
+++ labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestConstants.java	2009-04-17 05:32:55 UTC (rev 26088)
@@ -1,10 +1,10 @@
 package com.jboss.transaction.wstf.test ;
 
+import com.jboss.transaction.wstf.webservices.sc007.InteropConstants;
+
 import java.util.Map;
 import java.util.TreeMap;
 
-import com.jboss.transaction.wstf.webservices.sc007.InteropConstants;
-
 /**
  * This class contains constants used to map the front end onto
  * the WS-TX interop tests.
@@ -28,6 +28,14 @@
      * The name of the asynchronous test flag parameter.
      */
     public static final String PARAM_ASYNC_TEST = "asyncTest" ;
+    /**
+     * The name of the result page parameter.
+     */
+    public static final String PARAM_RESULT_PAGE = "resultPage";
+    /**
+     * Default address of page with results.
+     */
+    public static final String DEFAULT_RESULT_PAGE_ADDRESS = "/results.jsp";
     
     /**
      * The name of the test results attribute.

Modified: labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestRunner.java
===================================================================
--- labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestRunner.java	2009-04-17 05:29:03 UTC (rev 26087)
+++ labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestRunner.java	2009-04-17 05:32:55 UTC (rev 26088)
@@ -67,7 +67,7 @@
             return null ;
         }
         MessageLogging.appendThreadLog(LOG_MESSAGE_PREFIX) ;
-        final TestResult testResult = new TestResult() ;
+        final TestResult testResult = new FullTestResult() ;
         test.run(testResult) ;
         MessageLogging.appendThreadLog(LOG_MESSAGE_SUFFIX) ;
         return testResult ;

Modified: labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestServlet.java
===================================================================
--- labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestServlet.java	2009-04-17 05:29:03 UTC (rev 26087)
+++ labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/TestServlet.java	2009-04-17 05:32:55 UTC (rev 26088)
@@ -1,11 +1,8 @@
 package com.jboss.transaction.wstf.test;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.text.SimpleDateFormat;
-import java.util.Date;
+import com.arjuna.webservices.util.ClassLoaderHelper;
+import com.jboss.transaction.wstf.interop.MessageLogging;
+import junit.framework.TestResult;
 
 import javax.servlet.RequestDispatcher;
 import javax.servlet.ServletConfig;
@@ -23,12 +20,13 @@
 import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.stream.StreamResult;
 import javax.xml.transform.stream.StreamSource;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.StringReader;
+import java.io.StringWriter;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 
-import junit.framework.TestResult;
-
-import com.arjuna.webservices.util.ClassLoaderHelper;
-import com.jboss.transaction.wstf.interop.MessageLogging;
-
 /**
  * The test servlet.
  * @author kevin
@@ -44,7 +42,8 @@
      * The validation templates.
      */
     private Templates validationTemplates ;
-    
+
+
     /**
      * Initialise the servlet.
      * @param config The servlet configuration.
@@ -82,6 +81,11 @@
         final String test = request.getParameter(TestConstants.PARAM_TEST) ;
         final String testTimeoutValue = request.getParameter(TestConstants.PARAM_TEST_TIMEOUT) ;
         // final String asyncTestValue = request.getParameter(TestConstants.PARAM_ASYNC_TEST) ;
+        String resultPageAddress = request.getParameter(TestConstants.PARAM_RESULT_PAGE);
+        if (resultPageAddress == null || resultPageAddress.length() == 0)
+        {
+           resultPageAddress = TestConstants.DEFAULT_RESULT_PAGE_ADDRESS;
+        }
 
         final int serviceURILength = (serviceURI == null ? 0 : serviceURI.length()) ;
         final int testLength = (test == null ? 0 : test.length()) ;
@@ -163,7 +167,7 @@
             }
         }
         
-        final RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/results.jsp") ;
+        final RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(resultPageAddress) ;
         dispatcher.forward(request, response) ;
     }
     

Added: labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/XMLResultsServlet.java
===================================================================
--- labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/XMLResultsServlet.java	                        (rev 0)
+++ labs/jbosstm/workspace/interop/WSTFSC07-interop/src/com/jboss/transaction/wstf/test/XMLResultsServlet.java	2009-04-17 05:32:55 UTC (rev 26088)
@@ -0,0 +1,245 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags.
+ * See the copyright.txt in the distribution for a full listing
+ * of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006,
+ * @author JBoss Inc.
+ */
+package com.jboss.transaction.wstf.test;
+
+import org.dom4j.dom.DOMDocument;
+import org.dom4j.dom.DOMElement;
+import org.dom4j.io.OutputFormat;
+import org.dom4j.io.XMLWriter;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+import java.io.CharArrayWriter;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.util.Date;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * Formats test results to the JUnit XML format.
+ * @author <a href="mailto:istudens at redhat.com">Ivo Studensky</a>
+ * @version $Revision$
+ */
+public class XMLResultsServlet extends HttpServlet
+{
+   public void doGet(HttpServletRequest request, HttpServletResponse response)
+       throws ServletException, IOException
+   {
+      doStatus(request, response);
+   }
+
+   public void doPost(HttpServletRequest request, HttpServletResponse response)
+       throws ServletException, IOException
+   {
+      doStatus(request, response);
+   }
+
+   public void doStatus(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
+   {
+      response.setContentType("text/xml");
+      response.setHeader("Cache-Control", "no-cache");
+
+      HttpSession session = request.getSession();
+      final FullTestResult testResult = (FullTestResult) session.getAttribute(TestConstants.ATTRIBUTE_TEST_RESULT);
+
+      DOMDocument report = new DOMDocument();
+      DOMElement testsuite = new DOMElement("testsuite");
+      report.setRootElement(testsuite);
+
+      if (testResult == null)
+      {
+         // No JUnit test results generated.
+      }
+      else
+      {
+         List passedTests = testResult.getPassedTests();
+         List failedTests = testResult.getFailedTests();
+         List errorTests  = testResult.getErrorTests();
+
+         final int runCount = testResult.runCount() ;
+         final int errorCount = testResult.errorCount() ;
+         final int failureCount = testResult.failureCount() ;
+
+         testsuite.addAttribute("name", "com.jboss.transaction.wstf.interop.InteropTestSuite");
+         testsuite.addAttribute("errors", Integer.toString(errorCount));
+         testsuite.addAttribute("failures", Integer.toString(failureCount));
+         testsuite.addAttribute("hostname", request.getServerName());
+         testsuite.addAttribute("tests", Integer.toString(runCount));
+         testsuite.addAttribute("timestamp", new Date().toString());
+
+         DOMElement properties = new DOMElement("properties");
+         testsuite.add(properties);
+         DOMElement status = newPropertyDOMElement("status");
+         properties.add(status);
+         status.addAttribute("value", "finished");
+
+         long totalDuration = 0;
+
+         if (! passedTests.isEmpty())
+         {
+             Iterator passedTestsIterator = passedTests.iterator();
+             while (passedTestsIterator.hasNext())
+             {
+                 FullTestResult.PassedTest passedTest = (FullTestResult.PassedTest) passedTestsIterator.next();
+                 totalDuration += passedTest.duration;
+
+                 final String name = passedTest.test.toString();
+                 final String description = (String)TestConstants.DESCRIPTIONS.get(name) ;
+
+                 testsuite.add(newTestcase(
+                         passedTest.test.getClass().getName(), name + ": " + description, passedTest.duration));
+             }
+         }
+
+         if (! failedTests.isEmpty())
+         {
+             Iterator failedTestsIterator = failedTests.iterator();
+             while (failedTestsIterator.hasNext())
+             {
+                 FullTestResult.FailedTest failedTest = (FullTestResult.FailedTest) failedTestsIterator.next();
+                 totalDuration += failedTest.duration;
+
+                 final String name = failedTest.test.toString();
+                 final String description = (String)TestConstants.DESCRIPTIONS.get(name) ;
+                 CharArrayWriter charArrayWriter = new CharArrayWriter();
+                 PrintWriter printWriter     = new PrintWriter(charArrayWriter, true);
+                 failedTest.assertionFailedError.printStackTrace(printWriter);
+                 printWriter.close();
+                 charArrayWriter.close();
+
+                 testsuite.add(newFailedTestcase(
+                         failedTest.test.getClass().getName(), name + ": " + description, failedTest.duration,
+                         failedTest.assertionFailedError.getMessage(), charArrayWriter.toString()));
+             }
+         }
+
+         if (! errorTests.isEmpty())
+         {
+             Iterator errorTestsIterator = errorTests.iterator();
+             while (errorTestsIterator.hasNext())
+             {
+                 FullTestResult.ErrorTest errorTest = (FullTestResult.ErrorTest) errorTestsIterator.next();
+                 totalDuration += errorTest.duration;
+
+                 final String name = errorTest.test.toString();
+                 final String description = (String)TestConstants.DESCRIPTIONS.get(name) ;
+                 CharArrayWriter charArrayWriter = new CharArrayWriter();
+                 PrintWriter     printWriter     = new PrintWriter(charArrayWriter, true);
+                 errorTest.throwable.printStackTrace(printWriter);
+                 printWriter.close();
+                 charArrayWriter.close();
+
+                 System.out.println("charArrayWriter.toString()=" + charArrayWriter.toString());
+                 testsuite.add(newErrorTestcase(
+                         errorTest.test.getClass().getName(), name + ": " + description, errorTest.duration,
+                         errorTest.throwable.getMessage(), charArrayWriter.toString()));
+             }
+         }
+
+         // total time of all tests
+         testsuite.addAttribute("time", Float.toString(totalDuration / 1000f));
+      }
+
+      String logContent = null;
+      final String logName = (String)session.getAttribute(TestConstants.ATTRIBUTE_LOG_NAME) ;
+      if (logName != null)
+      {
+         try
+         {
+            logContent = TestLogController.readLog(logName) ;
+         }
+         catch (final Throwable th)
+         {
+            log("Error reading log file", th) ;
+         }
+      }
+
+      testsuite.add(new DOMElement("system-out").addCDATA((logContent != null) ? logContent : ""));
+      testsuite.add(new DOMElement("system-err").addCDATA(""));
+
+      XMLWriter outputter = new XMLWriter(response.getWriter(), OutputFormat.createPrettyPrint());
+      try {
+          outputter.write(testsuite);
+          outputter.close();
+      } catch (IOException e) {
+          throw new ServletException(e);
+      }
+   }
+
+   private DOMElement newPropertyDOMElement(String name)
+   {
+       return newPropertyDOMElement(name, null);
+   }
+
+   private DOMElement newPropertyDOMElement(String name, String value)
+   {
+       DOMElement property = new DOMElement("property");
+       property.addAttribute("name", name);
+       if (value != null)
+       {
+           property.addAttribute("value", value);
+       }
+       return property;
+   }
+
+   private DOMElement newTestcase(String classname, String name, long duration)
+   {
+       return newTestcase(classname, name, duration, null, null, null);
+   }
+
+   private DOMElement newFailedTestcase(String classname, String name, long duration, String failureMessage, String failureDetail)
+   {
+       return newTestcase(classname, name, duration, "junit.framework.AssertionFailedError", failureMessage, failureDetail);
+   }
+
+   private DOMElement newErrorTestcase(String classname, String name, long duration, String failureMessage, String failureDetail)
+   {
+       return newTestcase(classname, name, duration, "junit.framework.throwable", failureMessage, failureDetail);
+   }
+
+   private DOMElement newTestcase(String classname, String name, long duration, String failureMessage, String failureType, String failureDetail)
+   {
+       DOMElement testcase = new DOMElement("testcase");
+       testcase.addAttribute("classname", classname);
+       testcase.addAttribute("name", name);
+       testcase.addAttribute("time", Float.toString(duration / 1000f));    // converts from miliseconds to seconds
+       if (failureMessage != null)
+       {
+           DOMElement failure = new DOMElement("failure");
+           testcase.add(failure);
+           failure.addAttribute("message", failureMessage);
+           if (failureType != null)
+           {
+               failure.addAttribute("type", failureType);
+           }
+           if (failureDetail != null)
+           {
+               failure.addCDATA(failureDetail);
+           }
+       }
+       return testcase;
+   }
+
+}
\ No newline at end of file

Modified: labs/jbosstm/workspace/interop/WSTFSC07-interop/web.xml
===================================================================
--- labs/jbosstm/workspace/interop/WSTFSC07-interop/web.xml	2009-04-17 05:29:03 UTC (rev 26087)
+++ labs/jbosstm/workspace/interop/WSTFSC07-interop/web.xml	2009-04-17 05:32:55 UTC (rev 26088)
@@ -63,8 +63,13 @@
         <servlet-class>com.jboss.transaction.wstf.test.TestServlet</servlet-class>
         <load-on-startup>1</load-on-startup>
     </servlet>
-    
+
     <servlet>
+        <servlet-name>XML results servlet</servlet-name>
+        <servlet-class>com.jboss.transaction.wstf.test.XMLResultsServlet</servlet-class>
+    </servlet>
+
+    <servlet>
         <servlet-name>Log servlet</servlet-name>
         <servlet-class>com.jboss.transaction.wstf.test.TestLogServlet</servlet-class>
         <load-on-startup>1</load-on-startup>
@@ -80,8 +85,13 @@
         <servlet-name>JUnit test servlet</servlet-name>
         <url-pattern>/test</url-pattern>
     </servlet-mapping>
-    
+
     <servlet-mapping>
+        <servlet-name>XML results servlet</servlet-name>
+        <url-pattern>/xmlresults</url-pattern>
+    </servlet-mapping>
+
+    <servlet-mapping>
         <servlet-name>Log servlet</servlet-name>
         <url-pattern>/logs/*</url-pattern>
     </servlet-mapping>




More information about the jboss-svn-commits mailing list