那位大神,如果知道的话,求指点配置文件中有CertId?总之是检查为什么会产生空指针异常,而不能访问到文件只是可能的原因之一。回复
@zigzagroad:很怪,路径我也检查了,我是复制的路径,检查了很多遍,确认没得问题回复
@zigzagroad:ps-ef|greptomcatroot126191012:51?00:00:29/usr/java/jdk/jre/bin/java应该是root帐户回复
@zigzagroad:ps-ef|greptomcatroot126191012:51?00:00:29/usr/java/jdk/jre/bin/java如果是以root用户启动Tomcat,应该不存在用户权限问题,此时就需要注意路径是否正确,包括大小写。
权限不够?没有读取文件的权限?我的证书权限是777,上级目录权限也是777
这个文件以及所有路径的权限都是777,不知道为什么读不到
/web/zip/certs/unionpayweb.pfx
这个文件以及所有路径的权限都是777,不知道为什么读不到
不像是文件读不到的错误提示long太长两个wran被遮挡住了。看不见。你这个问题还是看下文档,联系下接口人,这个访问对方接口应该有ip限制。
Enumerationaliasenum=keyStore.aliases();
通过打印发现,是这个报错了,所以没得到CertId 有知道这个是怎么处理的吗,银联的
找到原因了,我还是说下,共享出来,以后有朋友遇到类似问题,可以参考
这个问题是jdk的原因,不是程序的原因,我在咨询了银联的技术客服后,给出了以下的解决方案
1、修改以下两个文件 %JRE_Home%\jre\lib\security\java.security追加最后一行security.provider.1=sun.security.provider.Sunsecurity.provider.2=sun.security.rsa.SunRsaSignsecurity.provider.3=sun.security.ec.SunECsecurity.provider.4=com.sun.net.ssl.internal.ssl.Providersecurity.provider.5=com.sun.crypto.provider.SunJCEsecurity.provider.6=sun.security.jgss.SunProvidersecurity.provider.7=com.sun.security.sasl.Providersecurity.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRIsecurity.provider.9=sun.security.smartcardio.SunPCSCsecurity.provider.10=sun.security.mscapi.SunMSCAPIsecurity.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider 2、将bcprov-ext-jdk16-143.jar放到 %JDK_Home%\jre\lib\ext
修改过后,重启,立马解决,困扰了两个星期的问题终于解决了
同时感谢之前积极回答我的朋友@
zigzagroad @
waitliu 感谢您们