2014-01-28 4 views
1

marshallSendAndReceive (url, requestPayload) 메소드를 호출하는 autowired org.springframework.ws.client.core.WebServiceOperations가 있습니다.Spring WebServiceOperations, HostnameVerify를 재정의하는 방법?

서비스 URL이 로컬 URL이면 호출이 성공한 것입니다. 나는 우리의 테스트 시스템 중 하나에 변경할 때 내가 얻을 : 나는 더 이상이 같은 충분 호스트 이름을 확인하지하는 HostnameVerify를 오버라이드 (override) 할 필요가 비슷한 질문을 읽은

org.springframework.ws.client.WebServiceIOException: I/O error: java.security.cert.CertificateException: No subject alternative DNS name matching myservername found.; 
nested exception is javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative DNS name matching myservername found. 

단지입니다 dev 임시 시험. 어떻게 할 수 있습니까?

답변

3

나는 다음과 같이 내가 원하는 것을 얻을 수 있었다. 스프링 XML로 내 객체의 실제 클래스였다

org.springframework.ws.client.core.WebServiceTemplate

그래서 당신이 인스턴스화하고 재정을하려면 다음을 작성하실 수 있습니다.

WebServiceTemplate template = new WebServiceTemplate(); 
HttpsUrlConnectionMessageSender sender = new HttpsUrlConnectionMessageSender(); 
sender.setHostnameVerifier(new NullHostnameVerifier()); 
template.setMessageSender(sender); 



public class NullHostnameVerifier implements HostnameVerifier { 
    public boolean verify(String hostname, SSLSession session) { 
     return true; 
    } 
} 
관련 문제