2017-11-20 18 views
0

내 응용 프로그램을 trustore로 설정했으며 내 로컬 배포에서 정상적으로 작동합니다. 그러나 생성 된 jar를 통해 배포하면 실패합니다. 그것은 내가 좋아하기 때문입니다.spring 부트 jar에서 truststore 파일에 연결할 수 없습니다. trustAnchors 매개 변수가 비어 있어야합니다.

System.setProperty("javax.net.ssl.trustStore", "src/main/resources/cacert"); 

그러나 내 항아리에는/BOOT-INF/classes/cacert 구조가 있습니다. 내가

System.setProperty("javax.net.ssl.trustStore", "BOOT-INF/classes/cacert"); 

내 시스템 속성을 변경했지만 그것은 그냥 신뢰 파일 위치에 시스템 속성을 설정하거나 SRC/주를 언급하여이 이유에 내가

trustAnchors parameter must be non-empty error. 

답변

0

을 얻기 때문에, 요구 사항을 충족하지 않았다/resources가 도움이되지 않습니다. 오히려 응용 프로그램에 임시 파일을 작성하고 truststore 파일의 내용을 파일에 복사하십시오. 그런 다음 get 속성을 가져 와서 해당 파일을 시스템 속성에 설정합니다. 이렇게하면 경로를 하드 코딩하거나 다른 클래스 경로를 사용할 필요가 없습니다.

Details can be found here. avasseur-pivotal에게 감사드립니다.