-
-
Notifications
You must be signed in to change notification settings - Fork 9k
Closed
Milestone
Description
简要描述
通过sdk请求微信支付创建商家券接口/查询商家券接口,提示json序列化/反序列化异常
模块版本情况
- WxJava 模块名: weixin-java-pay
- WxJava 版本号: 4.7.0
详细描述
sdk内com.github.binarywang.wxpay.bean.marketing.busifavor.AvailableWeek.AvailableDayTime没有定义为数组,微信api返回的是json数组,格式不一致导致异常
微信api文档:https://pay.weixin.qq.com/doc/v3/merchant/4012534855
日志
1.调用方法com.github.binarywang.wxpay.service.MarketingBusiFavorService#createBusiFavorStocksV3
【异常信息】:无法将 JSON 输入源“/body/coupon_use_rule/coupon_available_time/available_week/available_day_time”映射到多重字段“当天可用时间段”中,此字段需要 JSON 数组对象
WxPayException(customErrorMsg=无法将 JSON 输入源“/body/coupon_use_rule/coupon_available_time/available_week/available_day_time”映射到多重字段“当天可用时间段”中,此字段需要 JSON 数组对象, returnCode=null, returnMsg=null, resultCode=null, errCode=PARAM_ERROR, errCodeDes=无法将 JSON 输入源“/body/coupon_use_rule/coupon_available_time/available_week/available_day_time”映射到多重字段“当天可用时间段”中,此字段需要 JSON 数组对象, xmlString=null)
at com.github.binarywang.wxpay.service.impl.WxPayServiceApacheHttpImpl.convertException(WxPayServiceApacheHttpImpl.java:377)
at com.github.binarywang.wxpay.service.impl.WxPayServiceApacheHttpImpl.postV3WithWechatpaySerial(WxPayServiceApacheHttpImpl.java:192)
at com.github.binarywang.wxpay.service.impl.MarketingBusiFavorServiceImpl.createBusiFavorStocksV3(MarketingBusiFavorServiceImpl.java:33)
2. 调用方法com.github.binarywang.wxpay.service.MarketingBusiFavorService#getBusiFavorStocksV3
微信接口正常响应,sdk反序列化微信响应json报错:
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 302 path $.coupon_use_rule.coupon_available_time.available_week.available_day_time
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:226)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
at com.google.gson.Gson.fromJson(Gson.java:932)
at com.google.gson.Gson.fromJson(Gson.java:897)
at com.google.gson.Gson.fromJson(Gson.java:846)
at com.google.gson.Gson.fromJson(Gson.java:817)
at com.github.binarywang.wxpay.service.impl.MarketingBusiFavorServiceImpl.getBusiFavorStocksV3(MarketingBusiFavorServiceImpl.java:41)
Metadata
Metadata
Assignees
Labels
No labels