Skip to content

com.github.binarywang.wxpay.bean.entpay.EntPayRequest#storeMap中brandId空指针异常 #3908

@lzb-forever

Description

@lzb-forever

简要描述

com.github.binarywang.wxpay.bean.entpay.EntPayRequest#storeMap
brandId非必填但在storeMap中brandId.toString()是否会容易出现空指针异常

模块版本情况

  • WxJava 模块名: 微信支付
  • WxJava 版本号: v4.8.0

详细描述

在使用sdk企业付款到零钱时,为了方便重试或者为了记录日志,会在每次调用api后保存请求参数与响应参数,使用jackson以json字符串入库但现在因为brandId的问题无法转为json字符串,会报空指针异常

Image

日志

Exception in thread "main" com.fasterxml.jackson.databind.JsonMappingException: (was java.lang.NullPointerException) (through reference chain: com.github.binarywang.wxpay.bean.entpay.EntPayRequest["signParams"])
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:392)
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:351)
at com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:316)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:782)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:178)
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:480)
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:319)
at com.fasterxml.jackson.databind.ObjectMapper._writeValueAndClose(ObjectMapper.java:4568)
at com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:3821)
at com.wikemi.huodongbao.framework.common.util.json.JsonUtils.toJsonString(JsonUtils.java:50)
at com.wikemi.huodongbao.app.wx.WxPayTest.main(WxPayTest.java:260)
Caused by: java.lang.NullPointerException
at com.github.binarywang.wxpay.bean.entpay.EntPayRequest.storeMap(EntPayRequest.java:252)
at com.github.binarywang.wxpay.bean.request.BaseWxPayRequest.getSignParams(BaseWxPayRequest.java:329)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:689)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:774)

Metadata

Metadata

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions