收藏
回答

java 微信退款 httpClient.execute(httpPost) 空指针 什么原因?

public static String postDataWithCert(String url, String xmlObj, String mchId, String certPath) {
    // 加载证书
    try {
        initCert(mchId, certPath);
    } catch (Exception e) {
        e.printStackTrace();
    }
    String result = null;
    HttpPost httpPost = new HttpPost(url);
    // 得指明使用UTF-8编码,否则到API服务器XML的中文不能被成功识别
    StringEntity postEntity = new StringEntity(xmlObj, "UTF-8");
    httpPost.addHeader("Content-Type", "text/xml");
    httpPost.setEntity(postEntity);
    // 根据默认超时限制初始化requestConfig
    requestConfig = RequestConfig.custom().setSocketTimeout(socketTimeout).setConnectTimeout(connectTimeout).build();
    // 设置请求器的配置
    httpPost.setConfig(requestConfig);
    try {
        HttpResponse response = null;
        try {
            response = httpClient.execute(httpPost);
        } catch (IOException e) {
            e.printStackTrace();
        }
        HttpEntity entity = response.getEntity();
        try {
            result = EntityUtils.toString(entity, "UTF-8");
        } catch (IOException e) {
            e.printStackTrace();
        }
    } finally {
        httpPost.abort();
    }
    return result;
}
回答关注问题邀请回答
收藏

3 个回答

  • 小树
    小树
    02-04

    请问楼主解决了吗

    02-04
    有用
    回复
  • 北望沣渭
    北望沣渭
    2021-10-15

    v2退款需要加载商户证书及rsa私钥,你需要检查下这俩参数是不是没得了

    2021-10-15
    有用
    回复 1
    • Keep
      Keep
      2021-10-18
      都没问题呢  本地调试时可以退款的 linux服务器报错,在http请求时 报空指针呢
      2021-10-18
      回复
  • Keep
    Keep
    2021-10-15

    之前一直都没有问题,突然就有问题了 不知道什么原因呢 就是报空指针异常 response为null

    2021-10-15
    有用
    回复 2
    • 小九酒
      小九酒
      2023-12-22
      如何解决的,我也遇到了同样的问题
      2023-12-22
      回复
    • 小树
      小树
      02-04回复小九酒
      问题解决了吗
      02-04
      回复
登录 后发表内容