常见问题
1. 抛出异常 Illegal key size or default parameters
默认JDK不支持AES256(AES规定),需要替换jdk用于加密的jce包。在JAVA_HOME下找到jdk的这个目录: jre\lib\security。将新的local_policy.jar 与 US_export_policy.jar 两个包放入这个目录下,引用修改后的JDK,重新启动工程。(tomcat 也需要依赖到更改后的JDK上。jar包请联系技术支持wangminglin@grgbanking.com索取或根据jdk版本从网上下载。)
2. 数字信封服务异常[加密证书序列号错误]
在生产环境下,商户需要用中金平台的公钥进行加密,报了加密证书序列号错误,说明配置文件中的公钥调用错误,需要查看修改。
在测试环境中需要检查确认,signSN 与encryptSN是否为:82816944263。注意:如果值为:1348464887时。是默认的16进制,需要转换为10进制之后为:82816944263。若为其他值,则会返回以上报错。
如果确认配置文件没有问题,需要重新核实一下InstitutionID,这个字段的格式是否有问题。
首先确认请求调用的生产环境地址无误,其次查看配置文件中加载的支付平台公钥是否为dspCertificate2022.cer
3. 生产环境下,请求数据平台接口,报连接超时
生产环境数据平台有白名单限制,商户在上线申请时,申请表中填写了服务器的出口IP,我们在上线过程中对提供的IP放开了网络策略限制。
在报超时的服务器上 telnet data.cpcn.com.cn 9443,无法连接。若确认需要新增ip,数据平台方同事会协助发起申请流程,将商户服务器公网出口IP添加至白名单。(上线后新增IP大约需要2-3个工作日)
若telnet data.cpcn.com.cn 9443 可以通,用户需要考虑用户出口侧是否有出口限制。域名对应了两个IP,商户解析后对两个IP都放开限制或根据自身使用的运营商绑定某一线路IP。检查代理服务器是否配置了正确的9443端口。
4.报错-交易类型无效
一般这种报错是交易请求地址有误,请根据接口文档核对相应接口请求的测试/生产环境地址(若地址没问题,请检查接口编号txcode是否正确)。
5.请求报文格式不正确[缺少encryptSN参数]
需要设置contentType属性的值为"application/x-www-form-urlencoded"。若代码中可以正常打印出请求时的五个密文参数,那么报错原因大概率是contentType属性的值没有设置为"application/x-www-form-urlencoded"。
6.解密异常
1.非数字信封加密方式,请求报解密异常,可以重点关注是否有字段需要进行3DES加密。例如IdentificationNumber,AccountNumber 字段等。
2.非数字信封方式请求数字信封地址。
7. Failed PKCS12 integrity checking
用户需要注意私钥证书的密码是否输入正确。
8. toDerInputStream rejects tag type 98
在初始化证书时报错,定位问题使用测试环境的私钥和密码替换,报错消失。可以判断商户未按照规范导出私钥证书。可以参照<证书下载指南>从浏览器内找到下载的证书重新导出。
9. Algorithm HmacPBESHA256 not available
商户未按照规范导出私钥证书。可以参照<证书下载指南>从浏览器内找到下载的证书重新导出。
10.对称密钥解密异常
需要检查下传输过来的对称密钥字段dgtlenvlp。(可直接联系技术支持wangminglin@grgbanking.com)。
11.接口返回响应--机构交易无效[机构无此交易权限]
机构调用的接口未开通权限,如需添加权限可联系售前wangduan1@grgbanking.com或技术支持同事wangminglin@grgbanking.com。
12.交易流水号校验失败
交易流水号不满足数据平台的校验规则。我方交易流水号校验前八位是否满足当前时间,时间可前后相差一天,具体规则详见00-总体规范-6.1.2.3TxSN 交易流水号。
-----------------(问题若无法解决联系群内技术支持协助排查)------------------------------------