Схема Json реестра управления WSO2

#wso2 #wso2greg

#wso2 #wso2-управление-реестр

Вопрос:

Я столкнулся с некоторыми проблемами, связанными с публикацией GREG с использованием Swagger. Интересно, есть ли у вас какой-нибудь способ заставить GREG распознавать схему JSON, потому что я видел, что он распознает только XML-схему, что в конечном итоге вынуждает меня использовать WADL.

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

1. У меня есть 2 файла. Один файл swagger, а другой — схема json. Мой файл swagger использует мою схему json в качестве объектной модели. Я знаю, что если я импортирую файл swagger в Greg, он работает без проблем. Но, если мне нужно импортировать файл swagger, который зависит от файла схемы json, Greg не будет работать, потому что он просто распознает файл swagger, а не файл json. С помощью wsdl я могу сделать это хорошо. Я могу импортировать wsdl с помощью файла xsd, который Greg распознает оба. Как я могу это сделать с помощью swagger и Greg?

Ответ №1:

Я полагаю, вы используете серию G-Reg 4, которая не поддерживает Swagger. Однако в серии G-Reg 5 WSO2 включили это, и вы можете найти последнюю версию G-Reg 5.3.0 отсюда.Помимо этого, новый G-Reg предлагает вам еще несколько очень полезных функций для расширения возможностей управления SOA.

Добавление службы SOAP с использованием Swagger

Добавление файла Swagger

Чтобы включить схему json, необходимо создать обработчик. Пожалуйста, обратитесь к приведенным ниже примерам обработчиков типов носителей, доступных в greg(carbon-registry)

WSDLMediaTypeHandler.java

SwaggerMediaTypeHandler.java

WADLMediaTypeHandler.java

Пожалуйста, найдите эту полезную статью, которая научит вас, как создать простой обработчик.

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

1. У меня есть 2 файла. Один файл swagger, а другой — схема json. Мой файл swagger использует мою схему json в качестве объектной модели. Я знаю, что если я импортирую файл swagger в Greg, он работает без проблем. Но, если мне нужно импортировать файл swagger, который зависит от файла схемы json, Greg не будет работать, потому что он просто распознает файл swagger, а не файл json. С помощью wsdl я могу сделать это хорошо. Я могу импортировать wsdl с помощью файла xsd, который Greg распознает оба. Как я могу это сделать с помощью swagger и Greg?

Ответ №2:

Вы можете найти информацию о поддержке, предоставляемой для swagger в реестре управления WSO2, в следующей документации.

[1] — https://docs.wso2.com/display/Governance530/Adding a REST Service#AddingaRESTService-AddingaSOAPserviceusingaSwagger

[2] — https://docs.wso2.com/display/Governance530/Invoking a REST Service Using the In-built Swagger UI#InvokingaRESTServiceUsingtheIn-builtSwaggerUI-AddingtheSwaggerfile

Примечание: Как упоминалось в ответе @thusharaK, эти возможности доступны в последней версии продукта.

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

1. У меня есть 2 файла. Один файл swagger, а другой — схема json. Мой файл swagger использует мою схему json в качестве объектной модели. Я знаю, что если я импортирую файл swagger в Greg, он работает без проблем. Но, если мне нужно импортировать файл swagger, который зависит от файла схемы json, Greg не будет работать, потому что он просто распознает файл swagger, а не файл json. С помощью wsdl я могу сделать это хорошо. Я могу импортировать wsdl с помощью файла xsd, который Greg распознает оба. Как я могу это сделать с помощью swagger и Greg?

2. В настоящее время реестр управления WSO2 не поддерживает импорт схем JSON. Вам необходимо изменить SwaggerMediaTypeHandler для достижения этой задачи.