采用rest接口对接而非webservice
代码示例
public static String queryForCTI(String url){ String targetURL = getCTIurl()+"/"+url; StringBuffer sb = new StringBuffer(); try { URL restServiceURL = new URL(targetURL); HttpURLConnection httpConnection = (HttpURLConnection) restServiceURL.openConnection(); httpConnection.setRequestMethod("POST"); httpConnection.setRequestProperty("Accept", "application/json"); if (httpConnection.getResponseCode() != 200) { throw new RuntimeException("HTTP GET Request Failed with Error code : " + httpConnection.getResponseCode()); } BufferedReader responseBuffer = new BufferedReader(new InputStreamReader( (httpConnection.getInputStream()))); String output; while ((output = responseBuffer.readLine()) != null) { sb.append(output); } httpConnection.disconnect(); } catch (IOException e) { e.printStackTrace(); } logger.debug("from url "+url+"and result from server"+sb.toString()); return sb.toString(); } public static String postMsgToCTI(String url, BaseCtiEventVo baseCtiEventVo){ String targetURL = getCTIurl()+"/"+url; StringBuffer sb = new StringBuffer(); try { URL targetUrl = new URL(targetURL); HttpURLConnection httpConnection = (HttpURLConnection) targetUrl.openConnection(); httpConnection.setDoOutput(true); httpConnection.setRequestMethod("POST"); httpConnection.setRequestProperty("Content-Type", "application/json"); String input = getCtiRequestBody(baseCtiEventVo); OutputStream outputStream = httpConnection.getOutputStream(); outputStream.write(input.getBytes()); outputStream.flush(); if (httpConnection.getResponseCode() != 200) { throw new RuntimeException("Failed : HTTP error code : " + httpConnection.getResponseCode()); } BufferedReader responseBuffer = new BufferedReader(new InputStreamReader( (httpConnection.getInputStream()))); String output; logger.debug("Output from Server:\n"); while ((output = responseBuffer.readLine()) != null) { sb.append(output); } System.out.println(sb.toString()); analysisCtiResponseBody(sb.toString()); httpConnection.disconnect(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } logger.debug(sb.toString()); return sb.toString(); }