2011-01-10 1 views
11

축 jars를 사용하여 java에서 SSL ("https :") 프로토콜로 호스팅되는 .net 웹 서비스 (asmx)를 호출하는 동안 위의 예외를 해결하는 방법.javax.net.ssl.SSLException : 인식 할 수없는 SSL 메시지, 일반 텍스트 연결?

코드를 실행하는 동안 다음과 같은 오류 메시지가 왔는지 : 오류 메시지가 말한다

faultDetail: 
{http://xml.apache.org/axis/}stackTrace:javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? 
at com.ibm.jsse2.a.c(a.java:228) 
at com.ibm.jsse2.a.a(a.java:63) 
at com.ibm.jsse2.jc.a(jc.java:465) 
at com.ibm.jsse2.jc.g(jc.java:458) 
at com.ibm.jsse2.jc.a(jc.java:67) 
at com.ibm.jsse2.jc.startHandshake(jc.java:342) 
at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:186) 
at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191) 
at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404) 
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138) 
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) 
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) 
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) 
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165) 
at org.apache.axis.client.Call.invokeEngine(Call.java:2784) 
at org.apache.axis.client.Call.invoke(Call.java:2767) 
at org.apache.axis.client.Call.invoke(Call.java:2443) 
at org.apache.axis.client.Call.invoke(Call.java:2366) 
at org.apache.axis.client.Call.invoke(Call.java:1812) 
at examples.Example_client.main(Example_client.java:79) 

{http://xml.apache.org/axis/}hostname:D-113020008 
+1

"편집"링크를 사용하여 코드로 표시하려는 각 줄 앞에 4 개의 공백을 추가하십시오. (먼저 텍스트를 선택하면 버튼이 있습니다.) –

+1

이 서비스를 얼마나 정확하게 호출하고 있습니까? –

답변

5

으로, 확률은 피어가 SSL을 일반 텍스트를하지 말하고 있다는 것입니다.

+0

우리는 프록시 서버를 통해 webservice를 호출하고 있으며 우리는이 웹 서비스 URL을 우회하기 위해 프록시를 제어 할 수 없습니다. –

+0

또한 https.proxyhost, https.proxyPort, https.proxyUser 및 https.proxyPassword에 대한 시스템 특성을 설정했습니다. –

+0

@ 락시미 (Lakshmi) : 나는 어떤 차이가 있는지 안 보입니다. SSL을 사용하여 분명히 일반 텍스트 서비스에 연결하고 있습니다. – EJP

2

복잡한 방화벽 규칙에 의해 연결이 차단되기 전에이 오류가 발생했습니다. 만약 당신이 그 자리에 있다면 그 설정을 살펴볼 가치가있을 것입니다.

+1

불가능합니다. 연결이 차단 된 경우 알 수없는 메시지는 말할 것도없고 메시지를 전혀받지 못합니다. – EJP

6

프록시를 사용하여 SSL 콘텐츠를 가져올 수 있지만 프록시 설정이 잘못되었을 수 있습니다. 프록시 스키마로 http를 사용하고 실제 콘텐츠에 대한 스키마로 https를 고려해야합니다. 이것은 내 문제를 해결했다.