hhhzzzzzz666 2019-08-09 20:39 采纳率: 0%
浏览 1233

webservice接口解析数据时,如果不让自己请求头的CDATA封装和对方数据中的CDATA封装弄混?

webservice的接口。我用soupui输入wsdl地址,自动生成的头中有CDATA。对方提供的入参中也有用来转义的CDATA封装。导致我的头和他的尾对应上了,然后解析失败。
下面是我在soupui中生成的头尾:
```
soapenv:Header/
soapenv:Body
dhad:sendinpatinfo
dhad:xml
<![CDATA[

                ]]>
            </dhad:xml>
  </dhad:sendinpatinfo>

/soapenv:Body
/soapenv:Envelope

下面是对方传输的数据(剩去了部分敏感信息):
<?xml version="1.0" ?>
<!-- type: hsb.DhcEns.Message.Request  id: 35954888 -->
<Request xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<MessageCode>MES0088</MessageCode>
<InputString></InputString>
<InputStream>

<![CDATA[<Request><Header><SourceSystem>SYS0008</SourceSystem><MessageID>113738</MessageID></Header><Body><PatientId>318412</PatientId>...........................
<Routine><TESTNO>2144648100</TESTNO><REQUESTEDDATETIME>2019-08-02 10:09</REQUESTEDDATETIME><RESULTSRPTDATETIME>2019-08-02 10:09:18</RESULTSRPTDATETIME><SPECIMEN>全血</SPECIMEN><SUBJECT>全血细胞分析+全程CRP</SUBJECT><REPORTITEMNAME>C反应蛋白</REPORTITEMNAME><RESULT><![CDATA[<10.00]]]]><![CDATA[></RESULT><ABNORMALINDICATOR>正常</ABNORMALINDICATOR></Routine>
</Body></Request>]]>


</InputStream>
<TargetSeriveCode>REG0031</TargetSeriveCode>
<TargetMethodCode>sendinpatinfo</TargetMethodCode>
<TargetParaCode>xml</TargetParaCode>
<TargetFunCode>MES0088</TargetFunCode>
<EnsRowID>23930436</EnsRowID>
<MessageTemplateInfo></MessageTemplateInfo>
<RowID></RowID>
<TargetSrcCode></TargetSrcCode>
<TargetSqlCode></TargetSqlCode>
<LinkUrl>/csp/hsb/EnsPortal.VisualTrace.zen?SESSIONID=28550999</LinkUrl>
<HL7MessageCode></HL7MessageCode>
<SyncType></SyncType>
<IntFlag></IntFlag>
</Request>


这样我把对方推送的数据放到我的头尾中间进行测试,soupui会把我头结束的<![CDATA[  和他数据中间</Request>后面的 ]]>  对应上,导致对方推送的数据后面有一部分根本就没被我们识别到,然后解析失败,求大佬帮我分析一下我该怎么办?
  • 写回答

1条回答

  • 关注
    评论

报告相同问题?

悬赏问题

  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 ubuntu系统下挂载磁盘上执行./提示权限不够
  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 关于#r语言#的问题:差异分析前数据准备,报错Error in data[, sampleName1] : subscript out of bounds请问怎么解决呀以下是全部代码:
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码