내 과정에서 연결 중 하나의 스택 추적입니다 :내가 넣었습니다 security.provider.1 = org.bouncycastle.jce.provider.BouncyCastleProvider하지만 SSL 핸드 셰이크 중에 사용하지 않는 여기
"ServerConnection on port 10000 Thread 27" #521 prio=5 os_prio=0 tid=0x0000000002db4800 nid=0x2d79 runnable [0x00007f0ababb1000]
java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
at sun.security.ssl.InputRecord.read(InputRecord.java:503)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)
- locked <0x00000006d63c51f0> (a java.lang.Object)
at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:930)
at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
- locked <0x00000006d6405210> (a sun.security.ssl.AppInputStream)
at org.apache.geode.internal.cache.tier.sockets.Message.fetchHeader(Message.java:691)
at org.apache.geode.internal.cache.tier.sockets.Message.readHeaderAndPayload(Message.java:709)
at org.apache.geode.internal.cache.tier.sockets.Message.read(Message.java:657)
at org.apache.geode.internal.cache.tier.sockets.Message.recv(Message.java:1105)
- locked <0x00000006d6405288> (a java.nio.HeapByteBuffer)
at org.apache.geode.internal.cache.tier.sockets.Message.recv(Message.java:1118)
at org.apache.geode.internal.cache.tier.sockets.BaseCommand.readRequest(BaseCommand.java:869)
at org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMsg(ServerConnection.java:723)
at org.apache.geode.internal.cache.tier.sockets.ServerConnection.doOneMessage(ServerConnection.java:914)
at org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1171)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.geode.internal.cache.tier.sockets.AcceptorImpl$1$1.run(AcceptorImpl.java:519)
at java.lang.Thread.run(Thread.java:745)
은
여기 sun.security.ssl 대신 탄력성있는 성 도서관에서 사용 된 것을보아야합니다.
탄력성이있는 성 보안 공급자를 추가하면 런타임 중에 공급자를 JVM에 사용할 수 있는지 확인하지만이 공급자가 사용될 것이라는 보장은 없습니다. 그것은 당신의 코드에 사용 된 암호를 기반으로합니다. SSL 연결을 만드는 코드 조각을 공유하십시오. –
제 3 자 라이브러리입니다. 공급자의 우선 순위를 고려하여 해당 암호를 검색해서는 안됩니까? – mdavid
다른 공급자가 코드에 지정되어 있으면 어떻게 될까요? 타사 인 경우 타사 코드 (있는 경우)를 볼 수 있습니다. –