我正在尝试使用java ews-api连接到Microsoft Exchange服务器,但我收到错误javax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure
这是debug ssl log:
keyStore is: C:\java-1.5\jre\lib\security\cacerts
keyStore type is: jks
keyStore provider is:
init keystore
Installed Providers =
IBMJSSEProvider2 Build-Level: -20070822
IBMJCE
IBMJSSE
IBMJSSE2
IBMJGSSProvider
IBMCertPath
IBMPKCS11
IBMCMSProvider
IBMSPNEGO
JsseJCE: Using SecureRandom from provider IBMJCE version 1.2
trigger seeding of SecureRandom
done seeding SecureRandom
JsseJCE: Using cipher AES/CBC/NoPadding from provider TBD via init
export control - checking the cipher suites
export control - no cached value available...
export control - storing legal entry into cache...
JsseJCE: Using MessageDigest MD5 from provider IBMJCE version 1.2
JsseJCE: Using MessageDigest SHA from provider IBMJCE version 1.2
main, setSoTimeout(100000) called
main, setSoTimeout(100000) called
%% No cached client session
*** ClientHello, SSLv3
RandomCookie: GMT: 1449681114 bytes = { 48, 102, 180, 175, 129, 63, 170, 2, 130, 244, 218, 252, 192, 115, 133, 152, 34, 81, 111, 194, 71, 38, 133, 182, 113, 139, 96, 237 }
Session ID: {}
Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, SSL_RSA_WITH_AES_128_CBC_SHA, SSL_DHE_RSA_WITH_AES_128_CBC_SHA, SSL_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_RC4_128_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_RSA_FIPS_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA, SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA_EXPORT_WITH_RC4_40_MD5, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
Compression Methods: { 0 }
***
main, WRITE: SSLv3 Handshake, length = 79
main, READ: SSLv3 Alert, length = 2
main, RECV TLSv1 ALERT: fatal, handshake_failure
main, called closeSocket()
main, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
我发现我的问题可以通过升级JDK来修复,但当时我没有这种可能性。 还有其他方法可以解决这个错误吗?