Author: darran.lofthouse(a)jboss.com
Date: 2009-04-14 12:15:17 -0400 (Tue, 14 Apr 2009)
New Revision: 9825
Added:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/attach.jpeg
Removed:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/attach.jpeg
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/ant-import-tests/build-jars-jaxws.xml
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/server/ServiceEndpointInvoker.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/soap/MessageFactoryImpl.java
Log:
[JBPAPP-1773] Enable MTOM for incomming requests where the type of the content type is
'application/xop+xml'
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/ant-import-tests/build-jars-jaxws.xml
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/ant-import-tests/build-jars-jaxws.xml 2009-04-14
13:22:31 UTC (rev 9824)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/ant-import-tests/build-jars-jaxws.xml 2009-04-14
16:15:17 UTC (rev 9825)
@@ -546,6 +546,19 @@
</webinf>
</war>
+ <!-- jaxws-jbws2259 -->
+ <war warfile="${tests.output.dir}/libs/jaxws-jbws2259.war"
webxml="${tests.output.dir}/resources/jaxws/jbws2259/WEB-INF/web.xml">
+ <classes dir="${tests.output.dir}/classes">
+ <include
name="org/jboss/test/ws/jaxws/jbws2259/Endpoint.class"/>
+ <include
name="org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.class"/>
+ <include
name="org/jboss/test/ws/jaxws/jbws2259/CustomHandler.class"/>
+ <include name="org/jboss/test/ws/jaxws/jbws2259/Photo.class"/>
+ </classes>
+ <webinf
dir="${tests.output.dir}/resources/jaxws/jbws2259/WEB-INF">
+ <include name="jaxws-endpoint-config.xml"/>
+ </webinf>
+ </war>
+
<!-- jaxws-jbws2285 -->
<war warfile="${tests.output.dir}/libs/jaxws-jbws2285.war"
webxml="${tests.output.dir}/resources/jaxws/jbws2285/WEB-INF/web.xml">
<classes dir="${tests.output.dir}/classes">
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/server/ServiceEndpointInvoker.java
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/server/ServiceEndpointInvoker.java 2009-04-14
13:22:31 UTC (rev 9824)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/server/ServiceEndpointInvoker.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -166,6 +166,9 @@
CommonBinding binding = bindingProvider.getCommonBinding();
binding.setHeaderSource(delegate);
+ if (binding instanceof CommonSOAPBinding)
+ XOPContext.setMTOMEnabled(((CommonSOAPBinding)binding).isMTOMEnabled());
+
// call the request handler chain
boolean handlersPass = callRequestHandlerChain(sepMetaData, handlerType[0]);
@@ -239,10 +242,7 @@
// Set the required outbound context properties
setOutboundContextProperties();
-
- if (binding instanceof CommonSOAPBinding)
- XOPContext.setMTOMEnabled(((CommonSOAPBinding)binding).isMTOMEnabled());
-
+
// Bind the response message
MessageAbstraction resMessage = binding.bindResponseMessage(opMetaData,
sepInv);
msgContext.setMessageAbstraction(resMessage);
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/soap/MessageFactoryImpl.java
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/soap/MessageFactoryImpl.java 2009-04-14
13:22:31 UTC (rev 9824)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/main/java/org/jboss/ws/core/soap/MessageFactoryImpl.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -242,6 +242,10 @@
inputStream = decoder.getRootPart().getDataHandler().getInputStream();
attachments = decoder.getRelatedParts();
+ if (isXOPContent(contentType))
+ {
+ soapMessage.setXOPMessage(true);
+ }
}
else if (isSoapContent(contentType) == false)
{
@@ -298,4 +302,10 @@
String baseType = type.getBaseType();
return MimeConstants.TYPE_MULTIPART_RELATED.equalsIgnoreCase(baseType);
}
+
+ private boolean isXOPContent(ContentType type)
+ {
+ String paramType = type.getParameter("type");
+ return MimeConstants.TYPE_APPLICATION_XOP_XML.endsWith(paramType);
+ }
}
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259)
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java
===================================================================
---
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java 2009-03-30
14:16:54 UTC (rev 9689)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -1,62 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2009, 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.ws.jaxws.jbws2259;
-
-import java.io.ByteArrayOutputStream;
-
-import javax.xml.soap.SOAPMessage;
-import javax.xml.ws.handler.MessageContext;
-import javax.xml.ws.handler.soap.SOAPMessageContext;
-
-import org.jboss.logging.Logger;
-import org.jboss.ws.WSException;
-import org.jboss.wsf.common.handler.GenericSOAPHandler;
-
-/**
- * Test handker to test MTOM detection.
- *
- * @author darran.lofthouse(a)jboss.com
- * @since 27th March 2009
- * @see
https://jira.jboss.org/jira/browse/JBWS-2259
- */
-public class CustomHandler extends GenericSOAPHandler
-{
- private static final Logger log = Logger.getLogger(CustomHandler.class);
-
- public boolean handleMessage(final MessageContext msgContext)
- {
-
- SOAPMessage soapMessage = ((SOAPMessageContext)msgContext).getMessage();
- try
- {
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- soapMessage.writeTo(baos);
- log.info("Wrote message.");
- }
- catch (Exception e)
- {
- throw new WSException("Unable to write message.", e);
- }
-
- return true;
- }
-}
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java)
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java
(rev 0)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/CustomHandler.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -0,0 +1,62 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, 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.ws.jaxws.jbws2259;
+
+import java.io.ByteArrayOutputStream;
+
+import javax.xml.soap.SOAPMessage;
+import javax.xml.ws.handler.MessageContext;
+import javax.xml.ws.handler.soap.SOAPMessageContext;
+
+import org.jboss.logging.Logger;
+import org.jboss.ws.WSException;
+import org.jboss.ws.core.jaxws.handler.GenericSOAPHandler;
+
+/**
+ * Test handker to test MTOM detection.
+ *
+ * @author darran.lofthouse(a)jboss.com
+ * @since 27th March 2009
+ * @see
https://jira.jboss.org/jira/browse/JBWS-2259
+ */
+public class CustomHandler extends GenericSOAPHandler
+{
+ private static final Logger log = Logger.getLogger(CustomHandler.class);
+
+ public boolean handleMessage(final MessageContext msgContext)
+ {
+
+ SOAPMessage soapMessage = ((SOAPMessageContext)msgContext).getMessage();
+ try
+ {
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ soapMessage.writeTo(baos);
+ log.info("Wrote message.");
+ }
+ catch (Exception e)
+ {
+ throw new WSException("Unable to write message.", e);
+ }
+
+ return true;
+ }
+}
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java
===================================================================
---
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java 2009-03-30
14:16:54 UTC (rev 9689)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -1,41 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2009, 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.ws.jaxws.jbws2259;
-
-import javax.jws.WebService;
-import javax.xml.ws.BindingType;
-
-/**
- * Test Endpoint to test MTOM detection.
- *
- * @author darran.lofthouse(a)jboss.com
- * @since 27th March 2009
- * @see
https://jira.jboss.org/jira/browse/JBWS-2259
- */
-@WebService(name = "Endpoint", targetNamespace =
"http://ws.jboss.org/jbws2259")
-@BindingType(value="http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true")
-public interface Endpoint
-{
-
- public Photo echo(final Photo photo);
-
-}
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java)
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java
(rev 0)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Endpoint.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, 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.ws.jaxws.jbws2259;
+
+import javax.jws.WebService;
+import javax.xml.ws.BindingType;
+
+/**
+ * Test Endpoint to test MTOM detection.
+ *
+ * @author darran.lofthouse(a)jboss.com
+ * @since 27th March 2009
+ * @see
https://jira.jboss.org/jira/browse/JBWS-2259
+ */
+@WebService(name = "Endpoint", targetNamespace =
"http://ws.jboss.org/jbws2259")
+@BindingType(value="http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true")
+public interface Endpoint
+{
+
+ public Photo echo(final Photo photo);
+
+}
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java
===================================================================
---
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java 2009-03-30
14:16:54 UTC (rev 9689)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -1,81 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2009, 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.ws.jaxws.jbws2259;
-
-import java.awt.Image;
-import java.io.IOException;
-
-import javax.jws.WebService;
-import javax.xml.ws.BindingType;
-import javax.activation.DataHandler;
-
-import org.jboss.logging.Logger;
-import org.jboss.ws.WSException;
-import org.jboss.ws.annotation.EndpointConfig;
-
-/**
- * Test Endpoint to test MTOM detection.
- *
- * @author darran.lofthouse(a)jboss.com
- * @since 27th March 2009
- * @see
https://jira.jboss.org/jira/browse/JBWS-2259
- */
-@WebService(name = "Endpoint", serviceName = "EndpointService",
targetNamespace = "http://ws.jboss.org/jbws2259", endpointInterface =
"org.jboss.test.ws.jaxws.jbws2259.Endpoint")
-@EndpointConfig(configName = "Custom Client Config", configFile =
"WEB-INF/jaxws-endpoint-config.xml")
-@BindingType(value="http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true")
-public class EndpointImpl implements Endpoint
-{
-
- private static final Logger log = Logger.getLogger(EndpointImpl.class);
-
- public Photo echo(Photo photo)
- {
-
- DataHandler dh = photo.getImage();
- String contentType = dh.getContentType();
- log.info("Actual content-type " + contentType);
- String expectedContentType = photo.getExpectedContentType();
- log.info("Expected content-type " + expectedContentType);
-
- if (expectedContentType.equals(contentType) == false)
- {
- throw new WSException("Expected content-type '" +
expectedContentType + "' Actual content-type '" + contentType +
"'");
- }
-
- try
- {
- Object content = dh.getContent();
- log.info("Content - " + content.toString());
- if (content instanceof Image == false)
- {
- throw new WSException("Unexpected content '" +
content.getClass().getName() + "'");
- }
- }
- catch (IOException e)
- {
- throw new WSException("Unable to getContent()", e);
- }
-
- return photo;
- }
-
-}
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java)
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java
(rev 0)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/EndpointImpl.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -0,0 +1,81 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, 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.ws.jaxws.jbws2259;
+
+import java.awt.Image;
+import java.io.IOException;
+
+import javax.jws.WebService;
+import javax.xml.ws.BindingType;
+import javax.activation.DataHandler;
+
+import org.jboss.logging.Logger;
+import org.jboss.ws.WSException;
+import org.jboss.ws.annotation.EndpointConfig;
+
+/**
+ * Test Endpoint to test MTOM detection.
+ *
+ * @author darran.lofthouse(a)jboss.com
+ * @since 27th March 2009
+ * @see
https://jira.jboss.org/jira/browse/JBWS-2259
+ */
+@WebService(name = "Endpoint", serviceName = "EndpointService",
targetNamespace = "http://ws.jboss.org/jbws2259", endpointInterface =
"org.jboss.test.ws.jaxws.jbws2259.Endpoint")
+@EndpointConfig(configName = "Custom Client Config", configFile =
"WEB-INF/jaxws-endpoint-config.xml")
+@BindingType(value="http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true")
+public class EndpointImpl implements Endpoint
+{
+
+ private static final Logger log = Logger.getLogger(EndpointImpl.class);
+
+ public Photo echo(Photo photo)
+ {
+
+ DataHandler dh = photo.getImage();
+ String contentType = dh.getContentType();
+ log.info("Actual content-type " + contentType);
+ String expectedContentType = photo.getExpectedContentType();
+ log.info("Expected content-type " + expectedContentType);
+
+ if (expectedContentType.equals(contentType) == false)
+ {
+ throw new WSException("Expected content-type '" +
expectedContentType + "' Actual content-type '" + contentType +
"'");
+ }
+
+ try
+ {
+ Object content = dh.getContent();
+ log.info("Content - " + content.toString());
+ if (content instanceof Image == false)
+ {
+ throw new WSException("Unexpected content '" +
content.getClass().getName() + "'");
+ }
+ }
+ catch (IOException e)
+ {
+ throw new WSException("Unable to getContent()", e);
+ }
+
+ return photo;
+ }
+
+}
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java
===================================================================
---
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java 2009-03-30
14:16:54 UTC (rev 9689)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -1,95 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source.
-* Copyright 2009, 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.ws.jaxws.jbws2259;
-
-import java.io.File;
-import java.net.URL;
-
-import javax.activation.DataHandler;
-import javax.activation.DataSource;
-import javax.activation.FileDataSource;
-import javax.xml.namespace.QName;
-import javax.xml.ws.BindingProvider;
-import javax.xml.ws.Service;
-import javax.xml.ws.soap.SOAPBinding;
-
-import junit.framework.Test;
-
-import org.jboss.wsf.test.JBossWSTest;
-import org.jboss.wsf.test.JBossWSTestSetup;
-
-/**
- * Test case to test MTOM detection.
- *
- * @author darran.lofthouse(a)jboss.com
- * @since 30th March 2009
- * @see
https://jira.jboss.org/jira/browse/JBWS-2259
- */
-public class JBWS2259TestCase extends JBossWSTest
-{
-
- private static Endpoint port;
-
- public static Test suite() throws Exception
- {
- return new JBossWSTestSetup(JBWS2259TestCase.class,
"jaxws-jbws2259.war");
- }
-
- public void setUp() throws Exception
- {
- super.setUp();
-
- if (port == null)
- {
- URL wsdlURL = new URL("http://" + getServerHost() +
":8080/jaxws-jbws2259?wsdl");
- QName serviceName = new
QName("http://ws.jboss.org/jbws2259",
"EndpointService");
-
- Service service = Service.create(wsdlURL, serviceName);
- port = service.getPort(Endpoint.class);
-
- BindingProvider bindingProvider = (BindingProvider)port;
- SOAPBinding soapBinding = (SOAPBinding)bindingProvider.getBinding();
- soapBinding.setMTOMEnabled(true);
- }
- }
-
- public void testCall() throws Exception
- {
- File sharkFile = getResourceFile("jaxws/jbws2259/attach.jpeg");
- DataSource ds = new FileDataSource(sharkFile);
- DataHandler handler = new DataHandler(ds);
-
- String expectedContentType = "image/jpeg";
-
- Photo p = new Photo();
- p.setCaption("JBWS2259 Smile :-)");
- p.setExpectedContentType(expectedContentType);
- p.setImage(handler);
-
- Photo reponse = port.echo(p);
- DataHandler dhResponse = reponse.getImage();
-
- String contentType = dhResponse.getContentType();
- assertEquals("content-type", expectedContentType, contentType);
- }
-
-}
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java)
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java
(rev 0)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/JBWS2259TestCase.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -0,0 +1,95 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2009, 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.ws.jaxws.jbws2259;
+
+import java.io.File;
+import java.net.URL;
+
+import javax.activation.DataHandler;
+import javax.activation.DataSource;
+import javax.activation.FileDataSource;
+import javax.xml.namespace.QName;
+import javax.xml.ws.BindingProvider;
+import javax.xml.ws.Service;
+import javax.xml.ws.soap.SOAPBinding;
+
+import junit.framework.Test;
+
+import org.jboss.wsf.test.JBossWSTest;
+import org.jboss.wsf.test.JBossWSTestSetup;
+
+/**
+ * Test case to test MTOM detection.
+ *
+ * @author darran.lofthouse(a)jboss.com
+ * @since 30th March 2009
+ * @see
https://jira.jboss.org/jira/browse/JBWS-2259
+ */
+public class JBWS2259TestCase extends JBossWSTest
+{
+
+ private static Endpoint port;
+
+ public static Test suite() throws Exception
+ {
+ return new JBossWSTestSetup(JBWS2259TestCase.class,
"jaxws-jbws2259.war");
+ }
+
+ public void setUp() throws Exception
+ {
+ super.setUp();
+
+ if (port == null)
+ {
+ URL wsdlURL = new URL("http://" + getServerHost() +
":8080/jaxws-jbws2259?wsdl");
+ QName serviceName = new
QName("http://ws.jboss.org/jbws2259",
"EndpointService");
+
+ Service service = Service.create(wsdlURL, serviceName);
+ port = service.getPort(Endpoint.class);
+
+ BindingProvider bindingProvider = (BindingProvider)port;
+ SOAPBinding soapBinding = (SOAPBinding)bindingProvider.getBinding();
+ soapBinding.setMTOMEnabled(true);
+ }
+ }
+
+ public void testCall() throws Exception
+ {
+ File sharkFile = new File("resources/jaxws/jbws2259/attach.jpeg");
+ DataSource ds = new FileDataSource(sharkFile);
+ DataHandler handler = new DataHandler(ds);
+
+ String expectedContentType = "image/jpeg";
+
+ Photo p = new Photo();
+ p.setCaption("JBWS2259 Smile :-)");
+ p.setExpectedContentType(expectedContentType);
+ p.setImage(handler);
+
+ Photo reponse = port.echo(p);
+ DataHandler dhResponse = reponse.getImage();
+
+ String contentType = dhResponse.getContentType();
+ assertEquals("content-type", expectedContentType, contentType);
+ }
+
+}
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java
===================================================================
---
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java 2009-03-30
14:16:54 UTC (rev 9689)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -1,73 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2009, 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.ws.jaxws.jbws2259;
-
-import javax.activation.DataHandler;
-import javax.xml.bind.annotation.XmlMimeType;
-
-/**
- * Representation of a photo to test marshalling.
- *
- * @author darran.lofthouse(a)jboss.com
- * @since 27th March 2009
- */
-public class Photo
-{
-
- private String caption;
-
- private String expectedContentType;
-
- private DataHandler image;
-
- public String getCaption()
- {
- return caption;
- }
-
- public void setCaption(String caption)
- {
- this.caption = caption;
- }
-
- public String getExpectedContentType()
- {
- return expectedContentType;
- }
-
- public void setExpectedContentType(String expectedContentType)
- {
- this.expectedContentType = expectedContentType;
- }
-
- @XmlMimeType("*/*")
- public DataHandler getImage()
- {
- return image;
- }
-
- public void setImage(DataHandler image)
- {
- this.image = image;
- }
-
-}
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java)
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java
(rev 0)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/java/org/jboss/test/ws/jaxws/jbws2259/Photo.java 2009-04-14
16:15:17 UTC (rev 9825)
@@ -0,0 +1,73 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, 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.ws.jaxws.jbws2259;
+
+import javax.activation.DataHandler;
+import javax.xml.bind.annotation.XmlMimeType;
+
+/**
+ * Representation of a photo to test marshalling.
+ *
+ * @author darran.lofthouse(a)jboss.com
+ * @since 27th March 2009
+ */
+public class Photo
+{
+
+ private String caption;
+
+ private String expectedContentType;
+
+ private DataHandler image;
+
+ public String getCaption()
+ {
+ return caption;
+ }
+
+ public void setCaption(String caption)
+ {
+ this.caption = caption;
+ }
+
+ public String getExpectedContentType()
+ {
+ return expectedContentType;
+ }
+
+ public void setExpectedContentType(String expectedContentType)
+ {
+ this.expectedContentType = expectedContentType;
+ }
+
+ @XmlMimeType("*/*")
+ public DataHandler getImage()
+ {
+ return image;
+ }
+
+ public void setImage(DataHandler image)
+ {
+ this.image = image;
+ }
+
+}
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259 (from
rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/resources/jaxws/jbws2259)
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/resources/jaxws/jbws2259/WEB-INF)
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml
===================================================================
---
stack/native/trunk/modules/testsuite/native-tests/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml 2009-03-30
14:16:54 UTC (rev 9689)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml 2009-04-14
16:15:17 UTC (rev 9825)
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<jaxws-config xmlns="urn:jboss:jaxws-config:2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:javaee="http://java.sun.com/xml/ns/javaee"
- xsi:schemaLocation="urn:jboss:jaxws-config:2.0
jaxws-config_2_0.xsd">
-
- <client-config>
- <config-name>Custom Server Config</config-name>
-
- <post-handler-chains>
- <javaee:handler-chain>
- <javaee:handler>
- <javaee:handler-name> CustomHandler </javaee:handler-name>
-
<javaee:handler-class>org.jboss.test.ws.jaxws.jbws2259.CustomHandler</javaee:handler-class>
- </javaee:handler>
- </javaee:handler-chain>
- </post-handler-chains>
- </client-config>
-
-</jaxws-config>
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml)
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml
(rev 0)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/jaxws-endpoint-config.xml 2009-04-14
16:15:17 UTC (rev 9825)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jaxws-config xmlns="urn:jboss:jaxws-config:2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ xsi:schemaLocation="urn:jboss:jaxws-config:2.0
jaxws-config_2_0.xsd">
+
+ <client-config>
+ <config-name>Custom Server Config</config-name>
+
+ <post-handler-chains>
+ <javaee:handler-chain>
+ <javaee:handler>
+ <javaee:handler-name> CustomHandler </javaee:handler-name>
+
<javaee:handler-class>org.jboss.test.ws.jaxws.jbws2259.CustomHandler</javaee:handler-class>
+ </javaee:handler>
+ </javaee:handler-chain>
+ </post-handler-chains>
+ </client-config>
+
+</jaxws-config>
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml
===================================================================
---
stack/native/trunk/modules/testsuite/native-tests/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml 2009-03-30
14:16:54 UTC (rev 9689)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml 2009-04-14
16:15:17 UTC (rev 9825)
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<web-app
xmlns="http://java.sun.com/xml/ns/j2ee"
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
-
- <servlet>
- <servlet-name>TestEndpoint</servlet-name>
-
<servlet-class>org.jboss.test.ws.jaxws.jbws2259.EndpointImpl</servlet-class>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>TestEndpoint</servlet-name>
- <url-pattern>/*</url-pattern>
- </servlet-mapping>
-
-
-</web-app>
-
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml)
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml
(rev 0)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/WEB-INF/web.xml 2009-04-14
16:15:17 UTC (rev 9825)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<web-app
xmlns="http://java.sun.com/xml/ns/j2ee"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+ version="2.4">
+
+ <servlet>
+ <servlet-name>TestEndpoint</servlet-name>
+
<servlet-class>org.jboss.test.ws.jaxws.jbws2259.EndpointImpl</servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>TestEndpoint</servlet-name>
+ <url-pattern>/*</url-pattern>
+ </servlet-mapping>
+
+
+</web-app>
+
Deleted:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/attach.jpeg
===================================================================
(Binary files differ)
Copied:
stack/native/branches/jbossws-native-2.0.1.SP2_CP/src/test/resources/jaxws/jbws2259/attach.jpeg
(from rev 9689,
stack/native/trunk/modules/testsuite/native-tests/src/test/resources/jaxws/jbws2259/attach.jpeg)
===================================================================
(Binary files differ)