Author: alessio.soldano(a)jboss.com
Date: 2008-02-12 10:23:06 -0500 (Tue, 12 Feb 2008)
New Revision: 5658
Added:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/TestHandler.java
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/jaxws-handlers-server.xml
Modified:
framework/trunk/src/test/ant-import/build-jars-jaxws.xml
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/ExceptionTestCase.java
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/ExceptionEndpointImpl.java
Log:
[JBWS-1941] Modifying testsuite to check correct handler execution too when exceptions are
thrown
Modified: framework/trunk/src/test/ant-import/build-jars-jaxws.xml
===================================================================
--- framework/trunk/src/test/ant-import/build-jars-jaxws.xml 2008-02-12 08:24:03 UTC (rev
5657)
+++ framework/trunk/src/test/ant-import/build-jars-jaxws.xml 2008-02-12 15:23:06 UTC (rev
5658)
@@ -90,6 +90,8 @@
<include
name="org/jboss/test/ws/jaxws/samples/exception/server/ExceptionEndpoint.class"/>
<include
name="org/jboss/test/ws/jaxws/samples/exception/server/ExceptionEndpointImpl.class"/>
<include
name="org/jboss/test/ws/jaxws/samples/exception/server/UserException.class"/>
+ <include
name="org/jboss/test/ws/jaxws/samples/exception/server/TestHandler.class"/>
+ <include
name="org/jboss/test/ws/jaxws/samples/exception/server/jaxws-handlers-server.xml"/>
</classes>
</war>
Modified:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/ExceptionTestCase.java
===================================================================
---
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/ExceptionTestCase.java 2008-02-12
08:24:03 UTC (rev 5657)
+++
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/ExceptionTestCase.java 2008-02-12
15:23:06 UTC (rev 5658)
@@ -91,7 +91,7 @@
catch (SOAPFaultException e)
{
String faultString = e.getFault().getFaultString();
- assertTrue(faultString.indexOf("oh no, a runtime exception occured.")
>= 0);
+ assertTrue(faultString.indexOf("OH NO, A RUNTIME EXCEPTION OCCURED.")
>= 0);
}
}
@@ -104,7 +104,7 @@
}
catch (SOAPFaultException e)
{
- assertEquals("this is a fault string!",
e.getFault().getFaultString());
+ assertEquals("THIS IS A FAULT STRING!",
e.getFault().getFaultString());
assertEquals("mr.actor", e.getFault().getFaultActor());
assertEquals("FooCode",
e.getFault().getFaultCodeAsName().getLocalName());
assertEquals("http://foo",
e.getFault().getFaultCodeAsName().getURI());
@@ -122,7 +122,7 @@
catch (UserException_Exception e)
{
UserException ue = e.getFaultInfo();
- assertEquals("Some validation error", ue.getMessage());
+ assertEquals("SOME VALIDATION ERROR", ue.getMessage());
assertEquals("validation", ue.getErrorCategory());
assertEquals(123, ue.getErrorCode());
}
Modified:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/ExceptionEndpointImpl.java
===================================================================
---
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/ExceptionEndpointImpl.java 2008-02-12
08:24:03 UTC (rev 5657)
+++
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/ExceptionEndpointImpl.java 2008-02-12
15:23:06 UTC (rev 5658)
@@ -21,6 +21,7 @@
*/
package org.jboss.test.ws.jaxws.samples.exception.server;
+import javax.jws.HandlerChain;
import javax.jws.WebService;
import javax.xml.namespace.QName;
import javax.xml.soap.SOAPException;
@@ -30,6 +31,7 @@
@WebService(endpointInterface =
"org.jboss.test.ws.jaxws.samples.exception.server.ExceptionEndpoint")
+@HandlerChain(file = "jaxws-handlers-server.xml")
public class ExceptionEndpointImpl implements ExceptionEndpoint
{
public void throwRuntimeException()
Added:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/TestHandler.java
===================================================================
---
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/TestHandler.java
(rev 0)
+++
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/TestHandler.java 2008-02-12
15:23:06 UTC (rev 5658)
@@ -0,0 +1,72 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, 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.
+ */
+package org.jboss.test.ws.jaxws.samples.exception.server;
+
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+import javax.xml.soap.SOAPBody;
+import javax.xml.soap.SOAPBodyElement;
+import javax.xml.soap.SOAPElement;
+import javax.xml.soap.SOAPMessage;
+import javax.xml.ws.WebServiceException;
+import javax.xml.ws.handler.MessageContext;
+import javax.xml.ws.handler.soap.SOAPMessageContext;
+
+import org.jboss.wsf.test.GenericSOAPHandler;
+
+/**
+ * A simple server side handler applying uppercase function to the error message
strings.
+ *
+ * @author alessio.soldano(a)jboss.org
+ * @since 12-Feb-2008
+ */
+public class TestHandler extends GenericSOAPHandler
+{
+ @SuppressWarnings("unchecked")
+ public boolean handleFault(MessageContext msgContext)
+ {
+ try
+ {
+ SOAPMessage soapMessage = ((SOAPMessageContext)msgContext).getMessage();
+ SOAPBody soapBody = soapMessage.getSOAPBody();
+ SOAPBodyElement soapBodyElement =
(SOAPBodyElement)soapBody.getChildElements().next();
+ SOAPElement faultStringElement =
(SOAPElement)soapBodyElement.getChildElements(new QName("faultstring")).next();
+ faultStringElement.setValue(faultStringElement.getValue().toUpperCase());
+ Iterator<SOAPElement> itDetail = soapBodyElement.getChildElements(new
QName("detail"));
+ if (itDetail.hasNext())
+ {
+ Iterator<SOAPElement> itException =
itDetail.next().getChildElements(new
QName("http://server.exception.samples.jaxws.ws.test.jboss.org/"...);
+ if (itException.hasNext())
+ {
+ SOAPElement messageElement =
(SOAPElement)itException.next().getChildElements(new QName("message")).next();
+ messageElement.setValue(messageElement.getValue().toUpperCase());
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ throw new WebServiceException(e);
+ }
+ return true;
+ }
+}
Property changes on:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/TestHandler.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/jaxws-handlers-server.xml
===================================================================
---
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/jaxws-handlers-server.xml
(rev 0)
+++
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/jaxws-handlers-server.xml 2008-02-12
15:23:06 UTC (rev 5658)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<handler-chains
xmlns="http://java.sun.com/xml/ns/javaee"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
javaee_web_services_1_2.xsd">
+
+ <handler-chain>
+ <protocol-bindings>##SOAP11_HTTP</protocol-bindings>
+ <handler>
+ <handler-name>TestHandler</handler-name>
+
<handler-class>org.jboss.test.ws.jaxws.samples.exception.server.TestHandler</handler-class>
+ </handler>
+ </handler-chain>
+</handler-chains>
\ No newline at end of file
Property changes on:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/samples/exception/server/jaxws-handlers-server.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF