[jbossws-commits] JBossWS SVN: r11536 - in framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws: jbws2917 and 1 other directory.

jbossws-commits at lists.jboss.org jbossws-commits at lists.jboss.org
Fri Feb 5 04:52:16 EST 2010


Author: richard.opalka at jboss.com
Date: 2010-02-05 04:52:15 -0500 (Fri, 05 Feb 2010)
New Revision: 11536

Added:
   framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2917/
   framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2917/JBWS2917TestCase.java
Log:
[JBWS-2917] providing test case

Added: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2917/JBWS2917TestCase.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2917/JBWS2917TestCase.java	                        (rev 0)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2917/JBWS2917TestCase.java	2010-02-05 09:52:15 UTC (rev 11536)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2010, 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.jbws2917;
+
+import java.io.ByteArrayOutputStream;
+import java.io.PrintWriter;
+import java.io.StringReader;
+
+import javax.xml.transform.stream.StreamSource;
+import javax.xml.ws.EndpointReference;
+
+import org.jboss.ws.Constants;
+import org.jboss.wsf.common.DOMUtils;
+import org.jboss.wsf.common.DOMWriter;
+import org.jboss.wsf.test.JBossWSTest;
+import org.w3c.dom.Element;
+
+/**
+ * [JBWS-2917] We're using buggy xalan version causing namespaces issues
+ *
+ * @author <a href="mailto:ropalka at redhat.com">Richard Opalka</a>
+ */
+public final class JBWS2917TestCase extends JBossWSTest
+{
+   private static final String XML_SOURCE = "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>\n" +
+   "<EndpointReference xmlns='http://www.w3.org/2005/08/addressing'>\n" +
+   "  <Address>http://localhost:8080/jaxws-endpointReference</Address>\n" +
+   "  <Metadata\n" + 
+   "    wsdli:wsdlLocation='http://org.jboss.ws/endpointReference http://localhost:8080/jaxws-endpointReference?wsdl'\n" +
+   "    xmlns:wsdli='http://www.w3.org/ns/wsdl-instance'>\n" +
+   "    <wsam:InterfaceName xmlns:wsam='http://www.w3.org/2005/08/addressing' xmlns:wsns='http://org.jboss.ws/endpointReference'>wsns:Endpoint</wsam:InterfaceName>\n" +
+   "    <wsam:ServiceName xmlns:wsam='http://www.w3.org/2005/08/addressing' xmlns:wsns='http://org.jboss.ws/endpointReference' xmlns='' EndpointName='HelloPort'>wsns:EndpointService</wsam:ServiceName>\n" +
+   "  </Metadata>\n" +
+   "</EndpointReference>\n";
+
+   public void testToString() throws Exception
+   {
+      assertTrue("lost xmlns:wsns namespace declaration", this.getXml(XML_SOURCE).indexOf("xmlns:wsns") != -1);
+      StreamSource source = new StreamSource(new StringReader(XML_SOURCE));
+      EndpointReference epRef = EndpointReference.readFrom(source);
+      assertTrue("lost xmlns:wsns namespace declaration", epRef.toString().indexOf("xmlns:wsns") != -1);
+   }
+   
+   private String getXml(final String s) throws Exception
+   {
+      return this.getXml(DOMUtils.parse(s));
+   }
+   
+   private String getXml(final Element e) throws Exception
+   {
+      ByteArrayOutputStream baos = new ByteArrayOutputStream();
+      PrintWriter pw = new PrintWriter(baos);
+      new DOMWriter(pw, Constants.DEFAULT_XML_CHARSET).setPrettyprint(true).print(e);
+      return baos.toString("utf-8");
+   }
+}



More information about the jbossws-commits mailing list