|
|
@@ -41,7 +41,7 @@ public class HttpXmlUtil {
|
|
|
public static String sendPost(String url, String xmlString) {
|
|
|
System.out.println("请求参数=" + xmlString);
|
|
|
System.out.println("请求参数=" + XMLFormat.format(xmlString));
|
|
|
- Response response;
|
|
|
+ Response response = null;
|
|
|
String responseString = null;
|
|
|
try {
|
|
|
|
|
|
@@ -66,6 +66,8 @@ public class HttpXmlUtil {
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
+ } finally {
|
|
|
+ response.close();
|
|
|
}
|
|
|
|
|
|
System.out.println("返回参数=" + responseString);
|
|
|
@@ -89,77 +91,77 @@ public class HttpXmlUtil {
|
|
|
}
|
|
|
|
|
|
|
|
|
- /**
|
|
|
- * 发送xml请求到server端
|
|
|
- *
|
|
|
- * @param url xml请求数据地址
|
|
|
- * @param xmlString 发送的xml数据流
|
|
|
- * @return map key:requestData key:responseData
|
|
|
- */
|
|
|
- public static InsApiLog sendXmlPost(String url, String xmlString) {
|
|
|
-
|
|
|
- System.out.println("请求参数=" + xmlString);
|
|
|
- log.debug("XML请求url:{},请求参数:{}", url, xmlString);
|
|
|
- InsApiLog lon = new InsApiLog();
|
|
|
-
|
|
|
- lon.setUrl(url);
|
|
|
- lon.setRequestData(xmlString);
|
|
|
- Response response = null;
|
|
|
- String responseString = null;
|
|
|
- try {
|
|
|
-
|
|
|
- OkHttpClient client = new OkHttpClient.Builder()
|
|
|
- .connectTimeout(60, TimeUnit.SECONDS)
|
|
|
- .writeTimeout(60, TimeUnit.SECONDS)
|
|
|
- .readTimeout(60, TimeUnit.SECONDS)
|
|
|
- .build();
|
|
|
-
|
|
|
- MediaType mediaType = MediaType.parse("text/xml");
|
|
|
- RequestBody body = RequestBody.create(mediaType, xmlString);
|
|
|
- Request request = new Request.Builder()
|
|
|
- .url(url)
|
|
|
- .post(body)
|
|
|
- .addHeader("Content-Type", "text/xml")
|
|
|
- .addHeader("cache-control", "no-cache")
|
|
|
- .build();
|
|
|
-
|
|
|
- response = client.newCall(request).execute();
|
|
|
- if (response.isSuccessful()) {
|
|
|
- responseString = response.body().string();
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- lon.setExceptionMsg(e.getMessage());
|
|
|
- return lon;
|
|
|
- } finally {
|
|
|
- System.out.println("返回参数=" + responseString);
|
|
|
- response.close();
|
|
|
- log.debug("XML返回url:{},响应参数:{}", url, responseString);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- String[] patterns = new String[]{
|
|
|
- // This will remove empty elements that look like <ElementName/>
|
|
|
- "\\s*<\\w+/>",
|
|
|
- // This will remove empty elements that look like <ElementName></ElementName>
|
|
|
- "\\s*<\\w+></\\w+>",
|
|
|
- // This will remove empty elements that look like
|
|
|
- // <ElementName>
|
|
|
- // </ElementName>
|
|
|
- "\\s*<\\w+>\n*\\s*</\\w+>"
|
|
|
- };
|
|
|
- for (String pattern : patterns) {
|
|
|
- Matcher matcher = Pattern.compile(pattern).matcher(responseString);
|
|
|
- responseString = matcher.replaceAll("");
|
|
|
- }
|
|
|
+// /**
|
|
|
+// * 发送xml请求到server端
|
|
|
+// *
|
|
|
+// * @param url xml请求数据地址
|
|
|
+// * @param xmlString 发送的xml数据流
|
|
|
+// * @return map key:requestData key:responseData
|
|
|
+// */
|
|
|
+// public static InsApiLog sendXmlPost(String url, String xmlString) {
|
|
|
+//
|
|
|
+// System.out.println("请求参数=" + xmlString);
|
|
|
+// log.debug("XML请求url:{},请求参数:{}", url, xmlString);
|
|
|
+// InsApiLog lon = new InsApiLog();
|
|
|
+//
|
|
|
+// lon.setUrl(url);
|
|
|
+// lon.setRequestData(xmlString);
|
|
|
+// Response response = null;
|
|
|
+// String responseString = null;
|
|
|
+// try {
|
|
|
+//
|
|
|
+// OkHttpClient client = new OkHttpClient.Builder()
|
|
|
+// .connectTimeout(60, TimeUnit.SECONDS)
|
|
|
+// .writeTimeout(60, TimeUnit.SECONDS)
|
|
|
+// .readTimeout(60, TimeUnit.SECONDS)
|
|
|
+// .build();
|
|
|
+//
|
|
|
+// MediaType mediaType = MediaType.parse("text/xml");
|
|
|
+// RequestBody body = RequestBody.create(mediaType, xmlString);
|
|
|
+// Request request = new Request.Builder()
|
|
|
+// .url(url)
|
|
|
+// .post(body)
|
|
|
+// .addHeader("Content-Type", "text/xml")
|
|
|
+// .addHeader("cache-control", "no-cache")
|
|
|
+// .build();
|
|
|
+//
|
|
|
+// response = client.newCall(request).execute();
|
|
|
+// if (response.isSuccessful()) {
|
|
|
+// responseString = response.body().string();
|
|
|
+// }
|
|
|
+// } catch (Exception e) {
|
|
|
+// e.printStackTrace();
|
|
|
+// lon.setExceptionMsg(e.getMessage());
|
|
|
+// return lon;
|
|
|
+// } finally {
|
|
|
+// System.out.println("返回参数=" + responseString);
|
|
|
+// response.close();
|
|
|
+// log.debug("XML返回url:{},响应参数:{}", url, responseString);
|
|
|
+// }
|
|
|
+//
|
|
|
+//
|
|
|
+// String[] patterns = new String[]{
|
|
|
+// // This will remove empty elements that look like <ElementName/>
|
|
|
+// "\\s*<\\w+/>",
|
|
|
+// // This will remove empty elements that look like <ElementName></ElementName>
|
|
|
+// "\\s*<\\w+></\\w+>",
|
|
|
+// // This will remove empty elements that look like
|
|
|
+// // <ElementName>
|
|
|
+// // </ElementName>
|
|
|
+// "\\s*<\\w+>\n*\\s*</\\w+>"
|
|
|
+// };
|
|
|
+// for (String pattern : patterns) {
|
|
|
+// Matcher matcher = Pattern.compile(pattern).matcher(responseString);
|
|
|
+// responseString = matcher.replaceAll("");
|
|
|
+// }
|
|
|
+//
|
|
|
+// lon.setResponseData(responseString);
|
|
|
+// return lon;
|
|
|
+// }
|
|
|
|
|
|
-// System.out.println("返回参数==" + responseString);
|
|
|
- lon.setResponseData(responseString);
|
|
|
- return lon;
|
|
|
- }
|
|
|
|
|
|
/**
|
|
|
- * 发送xml请求到server端
|
|
|
+ * 发送xml请求到server端 最新
|
|
|
*
|
|
|
* @param url xml请求数据地址
|
|
|
* @param xmlString 发送的xml数据流
|
|
|
@@ -199,7 +201,7 @@ public class HttpXmlUtil {
|
|
|
log.error(textHead + "请求异常:"+e.getMessage() + ",原始返回:" + response);
|
|
|
throw new SystemException("远程接口请求失败,请联系管理员。");
|
|
|
} finally {
|
|
|
- if(null != log) log.debug(textHead + "XML返回url:{},\n响应参数:{}", url, responseString);
|
|
|
+ if(null != log) log.debug(textHead + "XML返回url:{},\n响应参数:{}", url, responseString.replaceAll("\n",""));
|
|
|
response.close();
|
|
|
}
|
|
|
|