本项目使用 open jdk1.8.0_40-b25,在此期间遇到以下问题
一、证书问题
因为open jdk 未内置根证书,当发送 https 请求时会报异常:
java.security.InvalidAlgorithmParameterException:
the trustAnchors parameter must be non-empty
两种解决办法:
- 代码忽略证书
- 导入对应的证书
第二种方式可以通过 keytool 导入相应证书:
- 查看证书:
keytool -list -keystore "/usr/java/java-se-8u40-ri/jre/lib/security/cacerts" -storepass changeit
- 导入证书:
keytool -import -keystore "/usr/java/java-se-8u40-ri/jre/lib/security/cacerts" -storepass changeit -keypass changeit -alias comodoecccaDN -file COMODO_ECC_Extended_Validation_Secure_Server_CA.crt
二、font 字体问题
一般我们都会在windows
机器上开发,部署则是在linux
环境。加上如果测试环境和生产环境不一致,可能会导致这个问题只有到了生产才能会被发现。
比如系统生成图形验证码时会用到字体,如果正好没有的话,会导致页面验证码无法加载,后台会报 npe 异常。
解决办法是 服务器安装字体,使用命令yum install fontconfig
网友评论