gang_qi_xi_2 2020-04-20 11:16 采纳率: 80%
浏览 168
已采纳

将系统部署在was上,在调用微信接口生成media_id时报错,各位帮忙啊?

将系统部署在was上,在调用微信接口生成media_id时报错,错误信息:

[20-4-17 16:30:32:052 CST] 000000e4 SystemErr R Caused by: com.ibm.jsse2.util.h: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is:
java.security.cert.CertPathValidatorException: The certificate issued by CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US is not trusted; internal cause is:
java.security.cert.CertPathValidatorException: Certificate chaining error
[20-4-17 16:30:32:053 CST] 000000e4 SystemErr R at com.ibm.jsse2.util.f.a(f.java:109)

大佬们,求助啊!

运行到这 System.out.println("head=");之后没输出

 public static String v_upload(File file, String url, String fileName,String introduction,String title) throws Exception {
        System.out.println("v_upload--file="+file);
        System.out.println("v_upload--url="+url);
        System.out.println("v_upload--fileName="+fileName);
        System.out.println("v_upload--introduction="+introduction);
        System.out.println("v_upload--title="+title);

        URL urlObj = new URL(url);
        System.out.println("11111111111111");
         HttpURLConnection con = (HttpURLConnection) urlObj.openConnection();
         System.out.println("2222222222222");
         con.setRequestMethod("POST");
         con.setDoInput(true);
         con.setDoOutput(true);
         con.setUseCaches(false);

         con.setRequestProperty("Connection", "Keep-alive");
         con.setRequestProperty("Charset", "utf-8");

         // 设置边界
         String BOUNDARY = "----------" + System.currentTimeMillis();
         con.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + BOUNDARY);

         // 输出头
         StringBuilder sb = new StringBuilder();
         sb.append("--"); // 必须多两道线这里说明下,这两个横杠是http协议要求的,用来分隔提交的参数用的,不懂的可以看看http 协议头  
         sb.append(BOUNDARY);
         sb.append("\r\n");
         sb.append("Content-Disposition: form-data;name=\"type\" \r\n\r\n");//这里是参数名,参数名和值之间要用两次  
         sb.append("video/mp4\r\n"); //参数的值
         sb.append("--"); // 必须多两道线  
         sb.append(BOUNDARY);  
         sb.append("\r\n");  
         sb.append("Content-Disposition: form-data; name=\"description\";\r\n\r\n");
         sb.append(String.format("{\"title\":\"%s\", \"introduction\":\"%s\"}",title,introduction));
         sb.append("--");
         sb.append(BOUNDARY);
         sb.append("\r\n");
         sb.append("Content-Disposition:form-data;name=\"media\";filename=\"" + fileName + "\"\r\n");

         sb.append("Content-Type:application/octet-stream\r\n\r\n");
         System.out.println("v_upload--sb="+sb);
         byte[] head = sb.toString().getBytes("utf-8");
         System.out.println("head=");
         OutputStream outStrm = con.getOutputStream(); 
         System.out.println("con.getOutputStream()---"+outStrm);
         OutputStream out = new DataOutputStream(outStrm);
         System.out.println("aaaaa");
         out.write(head);

         // 输出体 = 
         System.out.println("333333333333333");
        System.out.println(file.getAbsolutePath());
        System.out.println("444444444");
         DataInputStream in = new DataInputStream(new FileInputStream(file));
         System.out.println("5555555555555");
         int bytes = 0;
         byte[] bufferOut = new byte[1024*10];
         while ((bytes = in.read(bufferOut)) != -1) {
             out.write(bufferOut, 0, bytes);

         }
         in.close();

         // 输出尾巴
         byte[] foot = ("\r\n--" + BOUNDARY + "--\r\n").getBytes();

         out.write(foot);
         out.flush();
         out.close();
         System.out.println("sb======="+sb);
         System.out.println(out);
         // 读取微信服务器返回的数据
         StringBuffer buffer = new StringBuffer();
         BufferedReader reader = new BufferedReader(new InputStreamReader(con.getInputStream()));
         String line = null;
         while ((line = reader.readLine()) != null) {
             buffer.append(line);
         }
         reader.close();
         return buffer.toString();

    }
  • 写回答

1条回答 默认 最新

  • 关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 12月16日

悬赏问题

  • ¥15 一道python难题2
  • ¥15 一道python难题
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备