>

이 문제를 해결하려면 몇 가지 제안이 필요합니다.

여기서, 우리는 모든 배포 후에 파트너 사용자를 만들 수 없으며 Tomcat 서비스를 다시 시작하면 완벽하게 작동합니다.

배포 후 파트너 사용자를 만들려고하면 로그에 오류가 발생합니다.

20-Dec-2017 13:27:35.388 | ERROR | [   http-apr-28080-exec-78] | SecurityAdminServiceManagerImpl:1986 - Error in generateCertificateDetails 
org.bouncycastle.operator.OperatorCreationException: cannot create signer: class configured for Signature (provider: BC) cannot be found.
    at org.bouncycastle.operator.jcajce.JcaContentSignerBuilder.build(Unknown Source) ~[bcpkix-jdk15on-156.jar:1.56.0.0]
    at com.northgateis.gem.security.cipher.CertificateHelper.signCertificate(CertificateHelper.java:298) ~[classes/:26696]
    at com.northgateis.gem.security.cipher.CertificateHelper.createClientCertificate(CertificateHelper.java:256) ~[classes/:26696]
    at com.northgateis.gem.security.service.impl.SecurityAdminServiceManagerImpl.generateCertificateDetails(SecurityAdminServiceManagerImpl.java:1979) [classes/:26696]
20-Dec-2017 13:56:44.158 INFO [http-apr-28080-exec-69] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [org.bouncycastle.jcajce.provider.asymmetric.rsa.DigestSignatureSpi$SHA256]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
 java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [org.bouncycastle.jcajce.provider.asymmetric.rsa.DigestSignatureSpi$SHA256]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
    at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1325)
    at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1313)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1178)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1139)


  • 답변 # 1

    개발하는 동안 자주하는 것처럼 앱을 다시 배포하면 작동이 중지됩니다. JNI는이 문제로 어려움을 겪고있는 또 다른 문제입니다.

    jar을 컨테이너 lib 디렉토리에 수동으로 복사하는 대신 항아리를 앱과 함께 제공하는 것을 선호합니다.

    lib 폴더에 javapns.jar 및 bcprove-jdk15on-1.47.jar 파일을 추가 할 수 있습니다

    JRE/JDK $ JAVA_HOME/jre/lib/security/java.security 에 BouncyCastle 추가  파일을 제공자로 지정하십시오 (예 : 여러 JRE/JDK가 설치된 경우 실행할 때 사용하는 JRE에 추가해야 함)

관련 자료

  • 이전 java - 동일한 교체 위치에서 LinkedHashmap의 전체 키/값 쌍을 교체하는 방법
  • 다음 Brute Force 알고리즘보다 나은 방법 찾기