处理soapUI特殊返回报文 【原】
String message ="<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">"
+ "<soap:Body>"
+ " <SetBxInfoTest xmlns=\"http://tempuri.org/\"> "
+ " <jkxlh>C33D61EF17</jkxlh> "
+ " <WriteXml> <![CDATA[<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ " <Data> "
+ " <value> "
+ " <Hphm/> "
+ " <Cjh>QWSDEFRTGVFEDSWER</Cjh> "
+ " <Bdh>63008080120150000001</Bdh> "
+ " <Pdh>23008135920150000001</Pdh> "
+ " <Jqxbf>1100.00</Jqxbf> "
+ " <Qbrq>2015-05-21</Qbrq> "
+ " <Zbrq>2016-05-20</Zbrq> "
+ " <Bbxr>张</Bbxr> "
+ " <Bbxrsfz>441225198006022516</Bbxrsfz> "
+ " <Jqxzt>1</Jqxzt> "
+ " <Scrq>2015-05-20 15:32:35</Scrq> "
+ " <Ccsqk>4</Ccsqk> "
+ " <Ccsje/> "
+ " <Ccspzhm/> "
+ " <Ccssbh/> "
+ " <Ccsnsrq/> "
+ " <Ccsnsqsrq/> "
+ " <Ccsnszzrq/> "
+ " <BdImg/> "
+ " </value> "
+ " </Data>]]> </WriteXml> "
+ " </SetBxInfoTest> "
+ " </soap:Body> "
+ "</soap:Envelope>";
HttpClient httpclient = HttpClients.createDefault();
HttpPost httppost = new HttpPost("http://10.15.22.120:8866/5700000002/ZHJDCBXSJAddCxSj/V1");//请求地址
StringEntity content =new StringEntity(message, Charset.forName("UTF-8"));// 第二个参数,设置后才会对,内容进行编码
content.setContentType("application/soap+xml; charset=UTF-8");//设置UTF-8编码
content.setContentEncoding("UTF-8");
httppost.setEntity(content); HttpResponse responses = null;
Document doc = null;
String queryResReceiveXml = null;
String sentity = null;
try {
responses = httpclient.execute(httppost);//执行发送
HttpEntity resEntity = responses.getEntity();
if (resEntity != null) {
sentity = EntityUtils.toString(resEntity, "UTF-8");//接受返回报文数据
System.out.println("返回2报文:"+sentity);
doc = XmlTool.getDocument(sentity, "UTF-8");//转换格式化
Element eRoot = doc.getRootElement();
Element body = eRoot.getChild("Body", eRoot.getNamespace());
Element resp = (Element) body.getChildren().get(0);
Element returnele = (Element) resp.getChildren().get(0);
if(returnele != null){
queryResReceiveXml = returnele.getText().toString();
}
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
System.out.println("返回报文:\n" + queryResReceiveXml);
}
处理soapUI特殊返回报文 【原】的更多相关文章
- spring-boot 使用Aop通知打印控制器请求报文和返回报文
一.简介 开发过程中我们往往需要写许多例如: @GetMapping("/id/get") public Result getById( String id) throws Exc ...
- oracle 正则查询json返回报文中某个字段的值
接口返回报文为json 格式,如下: {"body":{"businessinfo":{"c1rate":"25.00" ...
- 调用中行接口针对返回报文(xml形式)做相关处理
最近在对接中行银行接口,在获取返回报文的时候遇到一些问题,现在在这里做个总结 TIP: 在返回报文之前,要对前置机的URL请求,在这期间遇到一个坑,还是通过查看日志才发现问题 在填写转账信息的时候要求 ...
- 接口测试——fiddler对soapui请求返回信息抓取
原文:接口测试——fiddler对soapui请求返回信息抓取 背景:接口测试的时候,需要对接口的请求和返回信息进行查阅或者修改请求信息,可利用fiddler抓包工具对soapui的请求数据进行抓取或 ...
- httpClient调用接口的时候,解析返回报文内容
比如我httpclient调用的接口返回的格式是这样的: 一:data里是个对象 { "code": 200, "message": "执行成功&qu ...
- 返回报文变成xml格式了!
首先,google chrome之前有安装jsonview插件: 然后,自己弄springCloud项目,搭建eureka后,访问url发现返回报文变成xml格式了,一通摸索及查找,现整理如下: 1. ...
- soapUI系列之—-04 问题解决 获取接口返回报文response报错
1. SoapUI+Groovy中"org.apache.xmlbeans.XmlException: error: Unexpected element: CDATA" 通过So ...
- SpringMvc返回报文形式的控制-验证方法: JSON or HTML or XML
首先,请求通过accept请求头声明了支持的返回格式 然后,框架根据该请求头和代码实现(注解)选择了对应的MessageConverter处理返回! 一.验证过程 1.返回html 1.1.请求组装 ...
- java发送soapui格式的报文
import java.io.*;import java.net.HttpURLConnection;import java.net.URL; 使用java对soapui报文进行发送 public c ...
随机推荐
- Salesforce Bulk API 基于.Net平台下的实施
在最近的salesforce实施项目中应用到Bulk API来做数据接口.顺便把实际应用的例子写下来.希望对做salesforce接口的朋友有借鉴作用. 一 参考网络牛人写好的Demo. 下载地址:h ...
- 最长公共子序列(POJ1458)
给出两个字符串,求出这样的一个最长的公共子序列的长度:子序列中的每个字符都能在两个原串中找到,而且每个字符的先后顺序和原串中的先后顺序一致. Sample Input: abcfbc abfcabpr ...
- sqlserver登录名权限和用户名权限语句设置
在sqlserver的安全体系中分为登录名和用户名,登录名是用于登录整个数据库系统用的,用户名是针对各个具体的数据来创建的用户,所以针对权限设置要有这个两个用户进行分别设置,下面写下用语句设置这两个用 ...
- P1238 走迷宫
原题链接 https://www.luogu.org/problemnew/show/P1238 为了巩固一下刚学习的广搜,练一下迷宫类型的题 不过这道题我用的深搜..... 看问题,我们就知道这道题 ...
- jatoolsprinter html实现每隔几秒获取数据直接后台打印不弹窗
1.流程说明 jatoolspringter 必须要能在html代码里面看到 id =page1 page2 page3..... 才能打印,所以无法动态打印,必须先把要打印的内容放到页面某个地方隐 ...
- sshpass-Linux命令之非交互SSH密码验证
sshpass-Linux命令之非交互SSH密码验证 参考网址:https://www.cnblogs.com/chenlaichao/p/7727554.html ssh登陆不能在命令行中指定密码. ...
- Hadoop记录-切换NN
一.第一种方法 重启namenode(1.1.1.1 1.1.1.2)重启standby节点:1.1hadoop-daemon.sh stop zkfchadoop-daemon.sh stop na ...
- java 多线程 synchronized与lock的通信机制等问题,结合相应实例说明
1. 利用多线程实现如下需求: 写两个线程,一个线程打印1~52,另一个线程打印A~Z,打印顺序是12A34B...5152Z: 2. 使用synchronized 实现 public class T ...
- Intellij IDEA 4种配置热部署的方法【转】【补】
热加载 热加载可以使代码修改后无须重启服务器,就可以加载更改的代码.(其实分java和非java代码,本处可以让java代码立即生效且不重启服务) 第1种:修改服务器配置,使得IDEA窗口失去焦点时, ...
- python 黑魔法收集--已结
awesome python 中文大全 Fabric , pip, virtualenv 内建函数好文 awesome python 奇技淫巧 一句话求阶乘 from functools import ...