Spring Boot应用程序启动失败:嵌套异常为java.lang.IllegalStateException:无法加载密钥库

时间:2019-05-31 11:02:20

标签: java spring-boot

我正在尝试在我的其余api请求中启用https。我在项目的src / main / resources路径中添加了密钥库文件“ csrportal.p12”。另外,在属性文件中添加了server.ssl.key-store = classpath:csrportal.p12。我的应用程序仍然无法启动,因为它无法加载密钥存储文件。

有什么想法应该在属性中指定路径吗?

我尝试使用“ src / main / resources”路径尝试代码,但是它在本地而不是在已部署的版本中工作。应用程序找不到任何密钥库文件,尽管它位于文件夹中,现在我已添加

server.ssl.key-store=classpath:csrportal.p12 using classpath as well.

我已将这些以及其他必需的属性添加到了我的属性文件中:

server.ssl.key-store-type=PKCS12
# The path to the keystore containing the certificate
server.ssl.key-store=classpath:csrportal.p12

我还自定义了tomcat,并使用代码访问了密钥库文件:

try {
connector.setAttribute("keystoreFile",
ResourceUtils.getFile(cSRPortalSettings.getServerSslKeyStore()));
} catch (FileNotFoundException e) {
throw new IllegalStateException("Cannot load keystore", 
e);
}

我希望我的其余api使用https:// ...

但是日志的实际输出是:

Exception encountered 
during context initialization - cancelling refresh attempt: 
org.springframework.context.ApplicationContextException: Unable to start 
embedded container; nested exception is java.lang.IllegalStateException: 
Cannot load keystore",
"Application startup 
failed","logger_name":"org.springframework.boot.SpringApplication",
"stack_trace":"org.springframework.context.ApplicationContextException: 
Unable to start embedded container; nested exception is 
java.lang.IllegalStateException: Cannot load keystore\n\tat

0 个答案:

没有答案