Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Swordfish Documentation: Registry Interface
Contents
Managing WSDL's Resource
The entry point to manage WSDL's is the WSDL resource which has the URI
http://{registry host & port}/registry/wsdl
This resource allows to list the available WSDL, upload a WSDL, modify an existing one, and to delete a WSDL again.
Searching WSDL's
You can either query all the available WSDL's in the registry or a subset according to the following two criteria
- Retrieve all WSDL's that contain a portType element with a specific fully qualified name.
- Retrieve all WSDL's that contain a service, which implements a specific portType.
Query Syntax
To get all available WSDL's simply use the GET Method on the WSDL resource. So the following HTTP GET request will return a list of all WSDL's (assuming your registry is installled on example.com with port 80)
GET /registry/wsdl HTTP/1.1
If only looking for WSDL's with a specific portType name use the following schema
GET /wsdl?type=portType&targetNamespace={target namespace}&name={local name} HTTP/1.1
If looking for WSDL's that contain a service implementing a specific portType use use following schema
GET /registry/wsdl?type=service&refPortTypeNamespace={target namespace}&refPortTypeName={fully qualified name} HTTP/1.1
Response
The response of the query is a list of links to WSDL's matching the criteria, which has the following format:
<wsdlList> <url>./sample_1.wsdl</url> <url>./sample_2.wsdl</url> ... </wsdlList>
The URL's are relative to the URL of the document.
Working with a specific WSDL resource
Retrieve a specific WSDL resource
To get a specific WSDL just issue a HTTP GET request with the URL of the WSDL resource
GET /registry/wsdl/{wsdl id} HTTP/1.1
Creating / updating a WSDL
The registry interface offers two ways of creating / updating a WSDL. The preferred way is to use a HTTP PUT request to create / update a WSDL. The format of the URI under which to put the WSDL should be something like
/registry/wsdl/{wsdl id}
The body of the request should be the WSDL.
Deleting a WSDL
Just send a DELETE request with the URI of the WSDL you want to delete.
Improvements
- Make the query syntax more generic and allow combinations of query paramters
- Use the the Atom format to return the result set of the query
- Add POST operation to create and delete WSDL's as HTML does not support PUT & DELETE