SOAP Web services
Web services are software systems designed to support interoperable machine-to-machine interactions over a network. In this section, we are going to cover SOAP Web services. These Web services use SOAP (Simple Object Access Protocol) protocol to exchange messages. Following the specifications, the messages are:
- Formatted using XML.
- Typically conveyed using HTTP (but FTP, SMTP or JMS can be used too).
- Described using WSDL files (Web Services Description Language: an XML-based language used to describe the functionality offered by the Web service).
Denodo can publish base/derived views and interfaces as Web services to enable external applications that cannot use the JDBC or ODBC interfaces, to retrieve data from the Data Virtualization layer.
Creating SOAP Web services
Let's create your first SOAP Data Service in Denodo:
- We will use the Web Design Studio for creating SOAP Data service. Open the Web Design Studio and create a new folder called SOAP under your 2 - data services folder.
- Right-click on this new folder and select
New > Data service > SOAP Web service
.
- This will open the create new SOAP Web service dialog. This dialog has several tabs:
- Operations: here you can define the list of operations of the Web service.
- Settings: manages the configuration.
- Advanced: in this tab you can change the parameters of the connection between the Web service and Denodo server.
New Operation
In the first tab, Operations, you can add new operations to the Web service. You only have to drag any view/stored procedure/interface into this dialog. In this example, you are going to create a SOAP Web service to search clients using their ID. To do this, drag the previously created i_client_info interface to the workspace.
- Now, you can rename the Web service. Change the name to customerws by typing in the input box labeled "web service" at the top.
- Click the '+' icon next to i_client_info and rename the operation getI_CLIENT_INFOByCLIENT_ID...
to: getClientById by clicking the small pencil next to the operation.
- As you are going to search clients using the ID, you only have to leave the input parameter client_id and can drop the
rest. Drop.
Security
Ok, your SOAP Web service definition is complete but, before we save it, there is an important point to keep in mind: security. By default, created Web services do not have any authentication method which means anybody can use it. You will definitely want to protect the access to your services by configuring authentication methods. This task can be done in the second tab (Settings).
There are several authentication methods available:
- HTTP Basic/Basic with VDP.
- HTTP Digest.
- HTTP SPNEGO (Kerberos).
- OAuth 2.0.
- WSS Basic/Basic with VDP.
- WSS Digest.

For this example, select WSS Basic with VDP method, leaving the Accepted user(s) field empty, to delegate authentication to the Denodo server (only users with privileges to connect and execute queries in the Denodo Platform will have access to the Web service).
That's all! Finally, click on the Save button to create the SOAP Web service.
In the next section you are going to see a similar process but for creating REST Web services.