From 8d157852e078bb845104c142d9279e2f2696275b Mon Sep 17 00:00:00 2001 From: liyi Date: Wed, 5 Aug 2015 15:07:48 +0800 Subject: [PATCH] update --- changelog.txt | 2 ++ .../java/weixin/popular/client/HttpClientFactory.java | 11 ++--------- .../java/weixin/popular/client/LocalHttpClient.java | 11 ++++------- 3 files changed, 8 insertions(+), 16 deletions(-) diff --git a/changelog.txt b/changelog.txt index 9857541b..a1f4c7ca 100644 --- a/changelog.txt +++ b/changelog.txt @@ -6,6 +6,8 @@ Changes in version 2.4.4 (2015-08-05) ------------------------------------- *issue #17 对帐单bug修复 *MediaAPI 添加 mediaUploadimg,上传图文消息内的图片获取URL +*修改退款申请bug +*修改 初始化 MCH HttpClient KeyStore 调用方式 Changes in version 2.4.3 (2015-08-03) ------------------------------------- diff --git a/src/main/java/weixin/popular/client/HttpClientFactory.java b/src/main/java/weixin/popular/client/HttpClientFactory.java index 66c641d3..67a94eff 100644 --- a/src/main/java/weixin/popular/client/HttpClientFactory.java +++ b/src/main/java/weixin/popular/client/HttpClientFactory.java @@ -62,19 +62,12 @@ public static HttpClient createHttpClient(int maxTotal,int maxPerRoute) { * @param maxPerRoute * @return */ - public static HttpClient createKeyMaterialHttpClient(KeyStore keystore,String keyPassword,String[] supportedProtocols,int maxTotal,int maxPerRoute) { + public static HttpClient createKeyMaterialHttpClient(KeyStore keystore,String keyPassword,String[] supportedProtocols) { try { - SSLContext sslContext = SSLContexts.custom().useSSL().loadKeyMaterial(keystore, keyPassword.toCharArray()).build(); SSLConnectionSocketFactory sf = new SSLConnectionSocketFactory(sslContext,supportedProtocols, null,SSLConnectionSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER); - PoolingHttpClientConnectionManager poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager(); - poolingHttpClientConnectionManager.setMaxTotal(maxTotal); - poolingHttpClientConnectionManager.setDefaultMaxPerRoute(maxPerRoute); - return HttpClientBuilder.create() - .setConnectionManager(poolingHttpClientConnectionManager) - .setSSLSocketFactory(sf) - .build(); + return HttpClientBuilder.create().setSSLSocketFactory(sf).build(); } catch (KeyManagementException e) { e.printStackTrace(); } catch (NoSuchAlgorithmException e) { diff --git a/src/main/java/weixin/popular/client/LocalHttpClient.java b/src/main/java/weixin/popular/client/LocalHttpClient.java index a91859b3..2a54e53f 100644 --- a/src/main/java/weixin/popular/client/LocalHttpClient.java +++ b/src/main/java/weixin/popular/client/LocalHttpClient.java @@ -28,19 +28,16 @@ public static void init(int maxTotal,int maxPerRoute){ /** * 初始化 MCH HttpClient KeyStore - * @param keyStoreName keyStore 名称 - * @param keyStoreFilePath 私钥文件路径 * @param mch_id - * @param maxTotal - * @param maxPerRoute + * @param keyStoreFilePath */ - public static void initMchKeyStore(String keyStoreName,String keyStoreFilePath,String mch_id,int maxTotal,int maxPerRoute){ + public static void initMchKeyStore(String mch_id,String keyStoreFilePath){ try { - KeyStore keyStore = KeyStore.getInstance(keyStoreName); + KeyStore keyStore = KeyStore.getInstance("PKCS12"); FileInputStream instream = new FileInputStream(new File(keyStoreFilePath)); keyStore.load(instream,mch_id.toCharArray()); instream.close(); - HttpClient httpClient = HttpClientFactory.createKeyMaterialHttpClient(keyStore, mch_id, new String[]{"TLSv1"}, maxTotal, maxPerRoute); + HttpClient httpClient = HttpClientFactory.createKeyMaterialHttpClient(keyStore, mch_id, new String[]{"TLSv1"}); httpClient_mchKeyStore.put(mch_id, httpClient); } catch (KeyStoreException e) { e.printStackTrace();