Предыстория:
Некий поддерживаемый правительством оптовый торговец услугами широкополосного доступа в Австралии получил отзывы от дискуссионных групп о том, как лучше всего предоставлять услуги B2B розничным интернет-провайдерам. Они остановились на EbXML.
Проблема:
Мы очень маленькая компания (сравнительно), которая не хочет тратить много времени на интеграцию. Мы уже знакомы с интеграцией парных (входящих и исходящих) сервисов SOAP. В прошлом мы использовали инструментарий генерации кода на основе WSDL (в основном с сервисами RPC/Literal), где WSDL был описательным и достаточно простым для понимания инструментами генерации кода.
Если это вообще возможно, мы хотели бы избежать ручной интеграции сервисов с нашим бизнес-стеком. Мы знаем, что «Схемы интерфейса» обновлялись несколько раз; мы хотели бы (насколько это возможно) сгенерировать код и схему, чтобы мы могли моделировать наши отношения с поставщиком и исходящими/входящими сообщениями как простые "очереди" (таблицы) в базе данных SQL -- это будет нашей точкой интеграции.
Начиная с исходящей ("отправитель") веб-службы SOAP... она публикует документальное/литеральное WSDL-описание службы, которое, по-видимому, правильно работает с различными инструментами (например, wsdl2java, SoapUI) для создания сообщений "оболочки" EBXML. . Это ничего не говорит о самих «полезных» сообщениях, которые (по крайней мере, для MSH, который мы рассмотрели) должны быть multipart/related
вложениями с типом text/xml
.
Сообщения «полезной нагрузки» определяются в предоставленных файлах CPA (что-то вроде привязок) и Schema (стандартный XSD). Сам MSH, по-видимому, не обеспечивает никакой внешней проверки сообщений полезной нагрузки.
Вопрос:
Доступен ли такой же инструмент для генерации кода (как в веб-службах SOAP, описанных в WSDL) для CPA/схем EbXML? (то есть: инструменты, которые могут использовать схемы интерфейса CPA и 'полезной нагрузки' и выдавать java/c++/что угодно, и/или что-то похожее на WSDL, относящееся к сообщениям интерфейса 'полезной нагрузки' и/или пример Сообщения).
Если да, то где мне смотреть?
Если нет, существуют ли какие-либо проблемы, связанные с EbXML, которые могли бы предотвратить это? (Я бы предпочел не тратить несколько недель на проект по разработке инструментов, которые невозможно реализовать «правильно», учитывая имеющуюся информацию).