Java-解决报错com.google.gson.stream.MalformedJsonException

涎涎原创约 491 字大约 2 分钟...JavaJava

181-Java-解决报错com.google.gson.stream.MalformedJsonException:Expected ':' at line 1 column 8.mdopen in new window

注意

本博文仅供学术研究和交流参考,严禁将其用于商业用途。如因违规使用产生的任何法律问题,使用者需自行负责。

出现场景

如下图所示报错com.google.gson.stream.MalformedJsonException:Expected ':' at line 1 column 8

应用场景

这是一个调用接口的操作,如下图所示

我方传入一个id而另一开发团队作逻辑处理,我方得到返回结果给用户提示即可,如下所示

  • 传入
<soapenv:Envelope xmlns:soapenv="" xmlns:ser="">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:deleteHadByBillId>
         <!--Optional:-->
         <billId>qKKXVRJMS0mmczRf+hTjGL8MBA4=</billId>
      </ser:deleteHadByBillId>
   </soapenv:Body>
</soapenv:Envelope>
  • 返回
<soap:Envelope xmlns:soap="">
   <soap:Body>
      <ns2:deleteHadByBillIdResponse xmlns:ns2="">
         <return>{"msg":"无法找到通过EAS单据ID【qKKXVRJMS0mmczRf+hTjGL8MBA4=】查找到相关实收","code":"1000"}</return>
      </ns2:deleteHadByBillIdResponse>
   </soap:Body>
</soap:Envelope>

解决步骤

根据断点提示得到两个关键点,如下图所示

可以看到ret的值为

{&quot;msg&quot;:&quot;无法找到通过EASID【qKKXVRJMS0mmczRf+hTjGL8MBA4=】查找到相关客户&quot;,&quot;code&quot;:&quot;1000&quot;}

结合上下文可得知,可能是将 ' 转成了 html实体所致,我们只需将其转回即可

package org.apache.commons.lang;
StringEscapeUtils.unescapeHtml(data);//可以将文中的&quot;转换成引号

更改之后则解决了此问题

** 以上就是我关于 解决报错com.google.gson.stream.MalformedJsonException:Expected ':' at line 1 column 8 知识点整理与总结的全部内容,希望对你有帮助。。。。。。。 **


分割线


扩展知识


暴躁的人其实挺好哄的,真正难哄的是那些温柔的人,她们拥有世间最残酷的理智和最容易沉迷的温柔


相关信息

以上就是我关于 Java-解决报错com.google.gson.stream.MalformedJsonException 知识点的整理与总结的全部内容,希望对你有帮助。。。。。。。

上次编辑于:
贡献者: 涎涎
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.4