2016-10-17 60 views
3

我在使用Swagger发布GREG时遇到了一些问题。我想知道是否有任何方法可以让GREG识别JSON模式,因为我看到它只识别XML模式,最终迫使我使用WADL。WSO2治理注册表Json Schema

+0

我有2个文件。一个swagger文件,另一个是json模式。 我的swagger文件使用我的json模式作为对象模型。 我知道如果我在Greg中导入一个swagger文件,它可以正常工作。 但是,如果我需要导入依赖json模式文件的swagger文件, Greg不会工作,因为它只识别swagger文件而不识别json文件。 用wsdl我可以做得很好。我可以用一个xsd文件导入一个wsdl e Greg可以识别这两个文件。 我该如何与swagger和Greg做到这一点? –

回答

4

我推测你使用的是没有Swagger支持的G-Reg 4系列。但是,在G-Reg 5系列中,WSO2已启用此功能,您可以找到最新版本,即G-Reg 5.3.0 from here.除此之外,新的G-Reg为您提供了一些更加非常有用的功能来增强SOA治理功能。

Adding a SOAP service using a Swagger

Adding the Swagger file

为了使您必须创建一个处理JSON模式。请参考下面的格雷格(碳注册表)提供样品介质类型处理器

WSDLMediaTypeHandler.java

SwaggerMediaTypeHandler.java

WADLMediaTypeHandler.java

请找this useful article将教你如何创建一个简单的处理程序。

+0

我有2个文件。一个swagger文件,另一个是json模式。 我的swagger文件使用我的json模式作为对象模型。 我知道如果我在Greg中导入一个swagger文件,它可以正常工作。 但是,如果我需要导入依赖json模式文件的swagger文件, Greg不会工作,因为它只识别swagger文件而不识别json文件。 用wsdl我可以做得很好。我可以用一个xsd文件导入一个wsdl e Greg可以识别这两个文件。 我该如何与swagger和Greg做到这一点? –

+0

更新了答案。请检查 – tkr

0

在以下文档中,您可以在WSO2治理注册表中找到有关为swagger提供的支持的信息。

[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的回答中提到,这些功能都在该产品的最新版本。

+0

我有2个文件。一个swagger文件,另一个是json模式。 我的swagger文件使用我的json模式作为对象模型。 我知道如果我在Greg中导入一个swagger文件,它可以正常工作。 但是,如果我需要导入依赖json模式文件的swagger文件, Greg不会工作,因为它只识别swagger文件而不识别json文件。 用wsdl我可以做得很好。我可以用一个xsd文件导入一个wsdl e Greg可以识别这两个文件。 我该如何与swagger和Greg做到这一点? –

+0

目前,WSO2 Governance Registry不支持导入JSON模式。您需要修改['SwaggerMediaTypeHandler'](https://github.com/wso2/carbon-registry/blob/7a7ef5b9998bd46f5be3fd2684951991bfc51386/components/registry/org.wso2.carbon.registry.extensions/src/main/java/org /wso2/carbon/registry/extensions/handlers/SwaggerMediaTypeHandler.java)以完成此任务。 – madawa