В чем разница между конечной точкой, сервис и порт при работе с веб-сервисов?

голоса
16

Я использовал Apache CXF подвергать около десяти классов Java в качестве веб-сервисов.

Я генерироваться клиентов с помощью CXF, оси и .NET.

В оси и CXF «Сервис» или «Локатор» генерируется. С этой услугой вы можете получить «порт». «Порт» используется, чтобы сделать индивидуальные вызовы методов, раскрываемых веб-службы.

В .NET «Услуга» напрямую выставляет вызовы веб-службы.

Может кто-то объяснить разницу между портом, сервис, локатор и конечную точку, когда дело доходит до веб-сервисов?

Ось:

PatientServiceImplServiceLocator locator = 
    new PatientServiceImplServiceLocator();
PatientService service = locator.getPatientServiceImplPort();

CXF:

PatientServiceImplService locator = new PatientServiceImplService();
PatientService service = locator.getPatientServiceImplPort();

.сеть:

PatientServiceImplService service = new PatientServiceImplService();
Задан 14/08/2008 в 20:23
источник пользователем
На других языках...                            


4 ответов

голоса
31

Я нашел информацию, основанную на ответ Кевина Кенни, но я решил разместить его здесь для других.

WSDL-документ определяет услуги как наборы сетевых оконечных или портов. В WSDL, абстрактное определение конечных точек и сообщений отделено от их конкретного развертывания сети или формата данных привязок. Это позволяет повторно использовать абстрактные определения: сообщения, которые являются абстрактными описаниями обмениваемых данных и типами портов, которые являются абстрактными коллекциями операций. Конкретные спецификации протокола и формат данных для конкретного типа порта является многоразовым связыванием. Порт определяется ассоциирование сетевого адреса с многоразовым связывания, и набор портов определяет услугу. Следовательно, WSDL документ использует следующие элементы определения сетевых сервисов:

  • Типы - это контейнер для определения типа данных , используя некоторый тип системы (например, XSD).
  • Сообщение - абстрактное, набранное определение данных передаются.
  • Операция - абстрактное описание действия , поддерживаемого сервисом.
  • Тип порта -an абстрактный набор операций одним или несколько конечных точек.
  • Связывание - конкретный протокол и спецификации формата данных для конкретного типа порта.
  • Порт - один конечная точка определяется как комбинация привязки и сетевой адрес.
  • Сервис - это совокупность связанных конечных точек.
Ответил 14/08/2008 в 21:03
источник пользователем

голоса
6

Я бы перепрыгнуть к http://www.w3.org/TR/wsdl.html , которые я думаю , объясняет порт, сервис и конечную точку достаточно хорошо. Локатор является конкретным механизмом реализации , что некоторые WS стеки использовать для обеспечения доступа к конечным точкам обслуживания.

Ответил 14/08/2008 в 20:54
источник пользователем

голоса
3

Я хотел бы добавить , что <port>и <endpoint>служат той же цели, но portиспользуется WSDL 1.1 и с endpointпомощью WSDL 2.0.

Это смутило меня сначала.

Ответил 14/04/2014 в 18:23
источник пользователем

голоса
1

Как уже упоминалось, эти термины означают разные вещи в разных стеков - нет один правильный общий ответ для веб-служб.

Ответил 14/08/2008 в 20:26
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more