/** * @param contextURI * @param wsdlURI * @param userName * @param password * @return * @throws WSDLException */ public Definition readWSDL(String contextURI, String wsdlURI, String userName, String password) throws WSDLException { try { if (verbose) { System.out.println( "Retrieving document at '" + wsdlURI + "'" //$NON-NLS-1$ //$NON-NLS-2$ + (contextURI == null ? "." : ", relative to '" + contextURI + "'.")); //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$ } URL contextURL = (contextURI != null) ? StringUtils.getURL(null, contextURI) : null; URL url = StringUtils.getURL(contextURL, wsdlURI); URLConnection urlConn = url.openConnection(); URLHelper.setCredentials(urlConn, userName, password); InputStream inputStream = urlConn.getInputStream(); InputSource inputSource = new InputSource(urlConn.getInputStream()); inputSource.setSystemId(url.toString()); Document doc = getDocument(inputSource, url.toString()); inputStream.close(); Definition def = readWSDL(url.toString(), doc); return def; } catch (WSDLException e) { throw e; } catch (RuntimeException e) { throw e; } catch (Exception e) { throw new WSDLException( WSDLException.OTHER_ERROR, "Unable to resolve imported document at '" + wsdlURI //$NON-NLS-1$ + (contextURI == null ? "'." : "', relative to '" + contextURI + "'."), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ e); } }