如何多次获取微信平台支付证书?
private static Config buildConfig(String merchantId,String privateKeyFromPath,String merchantSerialNumber,String apiV3Key){
if(buildConfig.get(merchantId) == null){
Config config = new RSAAutoCertificateConfig.Builder()
.merchantId(merchantId)
.privateKeyFromPath(privateKeyFromPath)
.merchantSerialNumber(merchantSerialNumber)
.apiV3Key(apiV3Key)
.build();
buildConfig.put(merchantId,config);
return config;
}else{
return buildConfig.get(merchantId);
}
}
我们这边是平台类商城,收款渠道由用户自已配置, new RSAAutoCertificateConfig.Builder()的结果会放到 一个 map 中。如果商家配置失败,出现签名失败时, RSAAutoCertificateConfig.Builder() 会报错,config就不会存入 buildConfig中。当商家修改配置后,就会再次执行 new RSAAutoCertificateConfig.Builder() 方法,然后程序就会报 java.lang.IllegalStateException: The corresponding provider for the merchant already exists. 有什么解决办法吗?