[jbossws-commits] JBossWS SVN: r15540 - thirdparty/cxf/branches/cxf-2.2.12-patch-02_JBPAPP-8012/rt/core/src/main/java/org/apache/cxf/transport/http.

jbossws-commits at lists.jboss.org jbossws-commits at lists.jboss.org
Mon Jan 30 08:54:04 EST 2012


Author: mmusaji
Date: 2012-01-30 08:54:04 -0500 (Mon, 30 Jan 2012)
New Revision: 15540

Modified:
   thirdparty/cxf/branches/cxf-2.2.12-patch-02_JBPAPP-8012/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java
Log:
[JBPAPP-8012] Added method to allow soap12 addresses to be found and rewritten

Modified: thirdparty/cxf/branches/cxf-2.2.12-patch-02_JBPAPP-8012/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java
===================================================================
--- thirdparty/cxf/branches/cxf-2.2.12-patch-02_JBPAPP-8012/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java	2012-01-30 11:50:24 UTC (rev 15539)
+++ thirdparty/cxf/branches/cxf-2.2.12-patch-02_JBPAPP-8012/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java	2012-01-30 13:54:04 UTC (rev 15540)
@@ -310,11 +310,8 @@
                     for (Element el : elementList) {
                         String name = el.getAttribute("name");
                         if (name.equals(ei.getName().getLocalPart())) {
-                            Element soapAddress = DOMUtils.findAllElementsByTagNameNS(el,
-                                                                 "http://schemas.xmlsoap.org/wsdl/soap/",
-                                                                 "address")
-                                                                       .iterator().next();
-                            soapAddress.setAttribute("location", base);
+                           rewriteAddress(base, el, "http://schemas.xmlsoap.org/wsdl/soap/");
+                           rewriteAddress(base, el, "http://schemas.xmlsoap.org/wsdl/soap12/");
                         }
                     }
                 }
@@ -326,6 +323,14 @@
             //likely not DOM level 3
         }
     }
+    
+    private void rewriteAddress(String base, Element el, String soapNS) {
+       List<Element> sadEls = DOMUtils.findAllElementsByTagNameNS(el,soapNS,
+             "address");
+       for (Element soapAddress : sadEls) {
+          soapAddress.setAttribute("location", base);
+       }
+     }
 
     static String resolveWithCatalogs(OASISCatalogManager catalogs, String start, String base) {
         if (catalogs == null) {



More information about the jbossws-commits mailing list