如何为RESTfull Web服务生成WSDL(WSDL 2.0)

时间:2016-02-21 13:05:59

标签: web-services rest annotations semantic-web wsdl-2.0

我正在寻找一种方法来为php中的RESTfull webservice生成WSDL(WSDL2)webservice描述符。

我知道RESTfull webservice不需要类似SOAP的描述,但我需要REST WS的WSDL为web服务添加语义注释。

1 个答案:

答案 0 :(得分:1)

您可以使用tinyWSDL

首先看一下here。 如果您使用XML Schema,您可以添加DOM Element或使用tinyXMLSchema插件(+ Apache XML Schema 2.1 libaray)。

Types types = description.getTypes();
SchemaTypesExtensions extensions = (SchemaTypesExtensions)types.getComponentExtensions(WSDLPredefinedExtension.SCHEMA.URI);
Schema schema = extensions.newSchema();

//在这里你可以创建一个新的Schema     XmlSchema xmlSchema =(XmlSchema)schema.getSchema();

//或设置已解析的一个:     schema.setSchema(XMLSCHEMA)

如果您不想使用Apache XML Shcema库,您可以随时使用DOM元素:

types.addExtensionElement(new QName("http://www.w3.org/2001/XMLSchema", "schema", "xs"), element)

干杯,

d

P.S。还有WSDL 2.0 - >源代码中的WADL转换器(不在jar中)。