生产环境要求使用Glassfish作为容器,因此Solr自带的Jetty只能是玩玩了!但是直接将[code="java"][/code]Solr4.2.1的distribution安装在Glassfish上时会抛出如下错误:
Caused by: java.io.IOException: Keystore was tampered with, or password was incorrect
at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:771)
at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:38)
at java.security.KeyStore.load(KeyStore.java:1185)
at org.apache.http.conn.ssl.SSLSocketFactory.createSystemSSLContext(SSLSocketFactory.java:281)
at org.apache.http.conn.ssl.SSLSocketFactory.createSystemSSLContext(SSLSocketFactory.java:366)
... 79 more
Caused by: java.security.UnrecoverableKeyException: Password verification failed
at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:769)
... 83 more
|#]
网上翻了很久之后,觉得这是一个bug,和SSL的配置关系不大!因此,下载了最新的httpcomponents-client-4.2.5-bin之后解压缩,将其中提供的lib替换到solr-4.2.1.war/WEB_INF/lib中对应的jar包!重新安装之后,问题解决了!
结论:坑爹!!!!