gpt4 book ai didi

java - BouncyCaSTLeProvider 无法在 Mac OSX 上的 Tomcat 7 启动时加载

转载 作者:行者123 更新时间:2023-11-28 22:30:49 33 4
gpt4 key购买 nike

我正在尝试在我全新的 MacBook Pro 上设置 Tomcat 应用程序开发环境。我需要设置一个实现 org.bouncycaSTLe.jce.provider.BouncyCaSTLeProvider 的 SSL 连接器。

Tomcat 7 启动但无法安装 SSL 连接器,我在 Tomcat Out 中读取了这个堆栈:

Grave: Failed to initialize connector [Connector[HTTP/1.1-9443]]
org.apache.catalina.LifecycleException: Failed to initialize component [Connector[HTTP/1.1-9443]]
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:640)
at org.apache.catalina.startup.Catalina.load(Catalina.java:665)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)
Caused by: org.apache.catalina.LifecycleException: L''initialisation du gestionnaire de protocole a échoué
at org.apache.catalina.connector.Connector.initInternal(Connector.java:983)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
... 12 more
Caused by: java.lang.ClassNotFoundException: Error loading SSL Implementation org.bouncycastle.jce.provider.BouncyCastleProvider :java.lang.ClassCastException: org.bouncycastle.jce.provider.BouncyCastleProvider cannot be cast to org.apache.tomcat.util.net.SSLImplementation
at org.apache.tomcat.util.net.SSLImplementation.getInstance(SSLImplementation.java:75)
at org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:118)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:981)
... 13 more

有些事情告诉我它与“java.lang.ClassNotFoundException:”有关。但是,我在 JAVA_HOME/lib/ext 中找到了包含 org.bouncycaSTLe.jce.provider.BouncyCaSTLeProvider 类的 jar。我什至试图将它放在 CATALINA_BASE/lib 中,以查看这是否可能来自 ClassPath 错误。不!

Tomcat server.xml 摘录:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/Users/xavier/ssl/pchain.keystore"
keystorePass="pwd" />

<Connector port="9443" keystorePass="pwd" alias="pca"
keystoreFile="/Users/xavier/ssl/pca.keystore" keystoreType="BKS"
SSLEnabled="true" clientAuth="false" protocol="HTTP/1.1" scheme="https"
secure="true" sslProtocol="TLS" sslImplementationName="org.bouncycastle.jce.provider.BouncyCastleProvider"/>

这是我的配置信息:

OS X 版本 10.8.3,JDK 1.7.0_45,Tomcat 版本 7.0.42。BouncyCaSTLe 测试包:bcprov-jdk15on-146.jar 到 bcprov-jdk15on-149.jar

有人已经解决了吗?

最佳答案

org.bouncycaSTLe.jce.provider.BouncyCaSTLeProvider 是 JCE 提供者,但不是 sslImplementationName 期望的 JSSE 提供者。

但是,Tomcat 的默认 JSSE 提供程序在内部使用 JCE,因此如果您在 JRE 中正确配置了 BouncyCaSTLeProvider,那么它的功能将可供 JSSE 提供程序使用。

此外,了解您回答此问题的最终目标是什么也会有所帮助彻底。

关于java - BouncyCaSTLeProvider 无法在 Mac OSX 上的 Tomcat 7 启动时加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19505042/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com