[jboss-svn-commits] JBL Code SVN: r31405 - in labs/jbossesb/branches/JBESB_4_7_CP/product/services: soapui-client/src/main/java/org/jboss/soa/esb/services/soapui and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Feb 4 13:32:22 EST 2010


Author: kevin.conner at jboss.com
Date: 2010-02-04 13:32:21 -0500 (Thu, 04 Feb 2010)
New Revision: 31405

Modified:
   labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/AbstractWsdlContractPublisher.java
   labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/RemoteWsdlLoader.java
   labs/jbossesb/branches/JBESB_4_7_CP/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java
Log:
shutdown HttpClient when done: JBESB-3169

Modified: labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/AbstractWsdlContractPublisher.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/AbstractWsdlContractPublisher.java	2010-02-04 17:53:21 UTC (rev 31404)
+++ labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/AbstractWsdlContractPublisher.java	2010-02-04 18:32:21 UTC (rev 31405)
@@ -182,11 +182,15 @@
             throw (IOException)(new IOException("Failed to create RemoteWsdlLoader instance.").initCause(e));
         }
 
-        InputStream wsdlStream = loader.load(wsdlAddress);
         try {
-            return StreamUtils.readStreamString(wsdlStream, "UTF-8");
+            InputStream wsdlStream = loader.load(wsdlAddress);
+            try {
+                return StreamUtils.readStreamString(wsdlStream, "UTF-8");
+            } finally {
+                wsdlStream.close();
+            }
         } finally {
-            wsdlStream.close();
+            loader.shutdown();
         }
     }
 

Modified: labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/RemoteWsdlLoader.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/RemoteWsdlLoader.java	2010-02-04 17:53:21 UTC (rev 31404)
+++ labs/jbossesb/branches/JBESB_4_7_CP/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/RemoteWsdlLoader.java	2010-02-04 18:32:21 UTC (rev 31405)
@@ -60,6 +60,9 @@
     }
 
     public InputStream load(String url) throws IOException {
+        if (httpClient == null) {
+            throw new IOException("RemoteWsdlLoader already shutdown") ;
+        }
         HttpMethodBase httpMethod;
 
         if(url.startsWith("file")) {
@@ -94,5 +97,10 @@
             httpMethod.releaseConnection();
         }
     }
+    
+    public void shutdown() {
+        HttpClientFactory.shutdown(httpClient);
+        httpClient = null ;
+    }
 }
 

Modified: labs/jbossesb/branches/JBESB_4_7_CP/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_7_CP/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java	2010-02-04 17:53:21 UTC (rev 31404)
+++ labs/jbossesb/branches/JBESB_4_7_CP/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java	2010-02-04 18:32:21 UTC (rev 31405)
@@ -77,7 +77,6 @@
 import com.eviware.soapui.impl.wsdl.WsdlOperation;
 import com.eviware.soapui.impl.wsdl.WsdlProject;
 import com.eviware.soapui.impl.wsdl.support.soap.SoapMessageBuilder;
-import com.eviware.soapui.impl.wsdl.support.wsdl.WsdlLoader;
 import com.eviware.soapui.impl.wsdl.support.xsd.SampleXmlUtil;
 import com.eviware.soapui.model.iface.MessagePart;
 import com.eviware.soapui.model.iface.Operation;
@@ -409,7 +408,13 @@
             WsdlInterface[] wsdlInterfaces = wsdls.get(wsdl);
             if (wsdlInterfaces == null) {
                 WsdlProject wsdlProject = new WsdlProject();
-                wsdlInterfaces = wsdlProject.importWsdl(wsdl, true, createWsdlLoader(wsdl, httpClientProps));
+                HttpClient httpClient = HttpClientFactory.createHttpClient(httpClientProps);
+
+                try {
+                   wsdlInterfaces = wsdlProject.importWsdl(wsdl, true, new EsbWsdlLoader(wsdl, httpClient));
+                } finally {
+                    HttpClientFactory.shutdown(httpClient);
+                }
                 wsdls.put(wsdl, wsdlInterfaces);
             }
             return wsdlInterfaces;
@@ -446,12 +451,6 @@
         throw new UnsupportedOperationException("Operation '" + operation + "' not supported by WSDL '" + wsdl + "'.");
     }
 
-    private WsdlLoader createWsdlLoader(String wsdl, Properties httpClientProps) throws ConfigurationException {
-        HttpClient httpClient = HttpClientFactory.createHttpClient(httpClientProps);
-
-        return new EsbWsdlLoader(wsdl, httpClient);
-    }
-
     private String buildSOAPMessage(String soapMessageTemplate, Map params, String smooksResource, String soapNs) throws IOException, SAXException {
         Document messageDoc = getDocument(soapMessageTemplate) ;
 



More information about the jboss-svn-commits mailing list