2013-03-04 2 views
9

스프링 WS를 사용하여 웹 서비스 클라이언트를 구현해야합니다.WebServiceGatewaySupport와 WebServiceTemplate의 장점

http://static.springsource.org/spring-ws/site/reference/html/client.html에서 설명서를 읽었지만 내 서비스 클래스에서 WebServiceTemplate을 직접 사용하는 것과 비교하여 WebServiceGatewaySupport을 확장하는 이점은 무엇인지 명확하지 않습니다.

내가 소스에서 알 수있는 한 WebServiceGatewaySupport에는 WebServiceTemplate 및 몇 가지 초기화 지원에 대한 몇 가지 래퍼 메소드 만 있습니다.

WebServiceTemplate을 직접 사용하는 대신 WebServiceGatewaySupport을 왜 확장해야합니까?

감사합니다.

답변

7

나는이 모든 위로를 요약 한 생각 (당신이 연결된 클라이언트 참조에서 발견) : 또는

쉽게 가능하도록 편리 빈 속성을 노출 봄-WS의 WebServiceGatewaySupport 편리한 기본 클래스에서 파생 고려 구성. (당신은이 편의 클래스로 제공됩니다 ...하지 이 기본 클래스를 확장해야 할 경우에만.)

그래서, WebserviceTemplate 당신이 필요로하는 모든, 그건 아마 충분할 것입니다 제공합니다. 추가로 필요한 것이 있다면 WebserviceTemplate 주위에 자신의 편의 방법을 래핑하는 방법에 대한 예제로 WebServiceGatewaySupport을 사용할 수 있습니다.

내 클라이언트 소프트웨어에서

, 난 그냥 같은 내 @Configuration 클래스의 WebserviceTemplate을 구성

@Bean 
public WebServiceTemplate webServiceTemplate() { 
    WebServiceTemplate template = new WebServiceTemplate(); 
    template.setMessageFactory(messageFactory()); 
    template.setDefaultUri(defaultUri); 
    template.setMarshaller(marshaller()); 
    template.setUnmarshaller(marshaller()); 
    template.setInterceptors(new ClientInterceptor[] {interceptor()}); 

    return template; 
} 

모든 메소드 호출이 예제에서 관련이없는 구성의 다른 방법에 대한 참조입니다 (). 내 코드에서 그 빈을 사 용하여 메시지를 보낼 수 있습니다.

+0

답변 해 주셔서 감사합니다. 24 시간 내에 더 좋은 대답이 없다면 현상금을 드리겠습니다. – Sorin