Какие элементы WSDL требуются (Oracle SOA Suite) - PullRequest
0 голосов
/ 30 марта 2012

Я пытаюсь понять файлы .wsdl, сгенерированные JDeveloper в SOA Projects. Я заметил, что они, как правило, содержат только типы, portType и элементы сообщения, но не сервис или элемент привязки.

Затем я проверил определение схемы WSDL на http://schemas.xmlsoap.org/wsdl/ и заметил, что привязка и служба являются обоими «ключевыми» элементами элемента определения wsdl. Означает ли это, что сервис и привязка являются обязательными элементами? Если да, то почему они не включены в файлы WSDL JDeveloper / SOA Suite?

[Update]

O.k. Я нашел частичный ответ на мой вопрос. Оказывается, когда вы получаете доступ к файлу WSDL через URL-адрес, привязка и элемент службы на самом деле включены.

Может ли кто-нибудь предоставить более подробную справочную информацию о:

  1. Как это происходит?
  2. Почему это сделано?
  3. Если (2) это потому, что вы хотите, чтобы конкретные определения вашего WSDL были скрыты от разработчика и обрабатывались динамически с помощью SOA Suite: конкретные примеры того, как это динамическое связывание работает и используется в реальных приложениях ...?

1 Ответ

3 голосов
/ 17 мая 2012

То, что вы видите сгенерированным, это абстрактный WSDL, который является минимумом, необходимым с точки зрения функциональности.Типы данных, операции и т. Д. Все там.

То, что вы ищете, - это конкретный WSDL, который конкретно определяет, как получить доступ к конкретной услуге (местоположение, протокол и т. Д.).Это больше касается конфигурации / развертывания с точки зрения SOA Suite.

Чтобы коротко ответить на ваши вопросы;

  1. Если клиенту нужен конкретный WSDL, SOA Suite генерирует конкретное определение WSDL по требованию (это предписывается спецификацией связывания WS).Если клиент выполняет вызов в соответствии с этим конкретным WSDL, SOA Suite знает, как разрешить вызов к вашей службе.
  2. По сути, вы определяете только функциональные части вашего сервиса и оставляете детали, касающиеся доступа к SOA Suite.В конце концов, они сильно зависят от деталей развертывания.Таким образом, ваши услуги становятся немного более отделенными от физических деталей.
  3. Это способ действий SCA.С точки зрения потребителя, опыт на самом деле не отличается.Они могут искать конкретный WSDL, как и любой другой сервис.

С точки зрения разработчиков следует помнить, что мы находимся в мире SCA.Внутри домена SCA привязки используются для предоставления сервисов или ссылки на них внутри композита.Только когда кто-то хочет предоставить сервис за пределами домена SCA, эти привязки преобразуются в обычные стандарты WS.

Для получения дополнительной информации вы можете ознакомиться со стандартом связывания WS в OASIS.http://docs.oasis -open.org / opencsa / ГСС-привязки / SCA-wsbinding-1,1-spec.pdf

...