Главная » Spring » Использование веб-служб Spring-WS

0

В главе 11 было показано, как можно использовать компонент JaxWsPortProxyFactoryBean для создания клиентов, взаимодействующих с удаленными веб-службами. Но там удаленные веб-службы интер- претировались как удаленные объекты, чьи методы можно вызывать локально. В этой же главе мы говорим о веб-службах, основанных на обмене сообщениями, когда клиент отправляет веб-службе и при- нимает в ответ XML-сообщения. Иная парадигма на стороне служ- бы требует использования иной парадигмы на стороне клиента. Для этой цели служит класс WebServiceTemplate из фреймворка Spring-WS. WebServiceTemplate  – это основа клиентского API в Spring-WS. Как показано на рис. 15.10, для реализации отправки и приема XML-сообщений он использует шаблон проектирования «Шаблон» (Template). Мы уже встречались с этим шаблоном проектирования в главе 6, когда знакомились с особенностями реализации уровня

абстракции доступа к данным в Spring.

Рис. 15.10. WebServiceTemplate – основной класс клиентского API в Spring-WS.

Он реализует отправку и прием XML-сообщений на стороне клиента

По мере знакомства с клиентским API фреймворка Spring-WS вы обнаружите, что он очень напоминает API доступа к данным.

Для демонстрации особенностей WebServiceTemplate создадим не- сколько разных реализаций интерфейса PokerClient, который опре- деляется, как показано ниже:

package com.springinaction.ws.client; import  java.io.IOException;

import  com.springinaction.poker.Card;

import   com.springinaction.poker.PokerHandType;

public interface PokerClient {

PokerHandType evaluateHand(Card[] cards) throws  IOException;

}

В каждой реализации будет демонстрироваться отдельный спо- соб использования класса WebServiceTemplate для отправки сообщений веб-службе оценки комбинации карт при игре в покер.

Но не будем забегать вперед. Сначала настроим компонент WebSer- viceTemplate в контексте Spring.

Источник:   Уоллс К., Spring в действии. – М.: ДМК Пресс, 2013. – 752 с.: ил.

По теме:

  • Комментарии