Web Service Application
Web Services provide a standardized way to call remote services via HTTP communication. Stardust allows you to
use Web Services as an application type for applications invoked by arbitrary activities in a process. Data can be
passed to and retrieved from Web Services as parameters via the access point concept.
Note
In the Modeling perspective, Web services are invoked using the JAX-WS 2.0 library.
In case you import a model from the Eclipse-based modeler which contains the classes generated through
Axis 1.2 in a Web service application, the engine will not be able to execute the model.
Setting Web Service Properties
Apart from the common properties, a Configuration property tab for configuring a Web Service
application is provided.
Figure: Web Service Application - Endpoint
Configuring the Web Service Application
The Configuration tab contains the following properties:
- WSDL URL - Specify location of the Web Service WSDL and click Load.
The URL must have the following format:
<protocol>:<path>/<document>
You can also specify the path of WSDL URL from local file system.
In case of file, the URL should be, for example,
file:/development/assets/TestService.wsdl.
On Windows, if the document is not on the default device C but on device Y,
you can use the format:
file:/Y/path-on-Y/document.wsdl
When you Load a WSDL, first
Service, Port and Operation are automatically
selected and displayed. As an effect structured data types for the selected operation are created.
- Service - Service to be invoked from the services listed in the previously loaded WSDL
specification.
Figure: Web Service Application - Endpoint
- Port - Selects the port to be invoked from the ports provided by the previously selected service.
- Operation - Selects the operation to be invoked from all operations provided by the previously selected port.
Note that Structured Types will be created implicitly with the definition of the Web Service Application Type,
but only SDTs required for the selected Operation will be created.
Creating SDTs via manual import of WSDLs is not supported.
- Style - Displays the encoding style used for the chosen operation.
- Protocol - Displays the protocol used for the chosen operation.
- Use - Displays the message used for the chosen operation.
- Include WS Addressing EPR - Specifies that at runtime a WS-Addressing Endpoint Reference
will be included into the request message.
- Implementation - Specifies the implementation (Generic Resource / Process Manager Specific) of
the above WS-Addressing endpoint.
- Authentication Required - Specifies whether at runtime any standard caller
authentication information is included into the request message.
If this check box is selected, a special access point named Authentication is generated for the activity.
By creating data mappings to this access point you can specify the authentication credentials to be set at runtime.
- Endpoint - If you select the Dynamically Bound Services option from the Service
drop-down list, then the Endpoint option is displayed.
You can specify the endpoint for the web service.
It means that the URL in WSDL file can be different and at the runtime, the user can change the URL.
The dynamically bound service provides an extra access point where you can specify at runtime
the concrete endpoint.
Figure: Endpoint field
Example
In this example, we use the WSDL demo provided by WebserviceX.net offering the current weather and weather conditions
for major cities around the world. We load the WSDL URL http://www.webservicex.com/globalweather.asmx?wsdl
in an example Web Service application. Once the wsdl is loaded, the related service, port, operation etc are populated
accordingly and structured data types are created.
Perform the following steps to work with the Web service application:
- Create a Web Service application.
- Open the Configuration tab in the application properties page.
- Enter
http://www.webservicex.com/globalweather.asmx?wsdl in the
WSDL URL field and click Load.

Figure: Load WSDL
- Once the wsdl is loaded, the Service, Port,
Operation and all the other fields get populated.
Figure: Web Service Application
- Two new structured types named GetWeather and
GetWeatherResponse get created.
Figure: Newly created structured types
- Structured type GetWeather has only one field:
Figure: Structured Type - GetWeather
- Structured type GetWeatherResponse has the following structure:
Figure: Structured Type - GetWeatherResponse
- Create a structured data named GetWeatherData of the structured type
GetWeather as shown in the following screenshot.
Figure: Structured Data of type GetWeather
- Now create a structured data named GetWeatherResponseData of the structured type
GetWeatherResponse.
Figure: Structured Data of type GetWeatherResponse
- Create a process and drag the Web Service application to the diagram canvas to create an activity to implement
it.
- Enter manual activities before and after the Web Service application task and map the structured data we created
in the previous steps with these tasks as shown in the following screenshot:
Figure: Process
- Specify an in data mapping between the Web service task and data GetWeatherData
as shown in the following screenshot:
Figure: Input Data Mapping
- Select parameters_struct(GetWeather) as the input access point. Note that this access point is
created automatically when we load the Web service.
- Specify an output data mapping between the Web service task and data
GetWeatherResponseData as shown in the following screenshot:
Figure: Output Data Mapping
- Select parameters_struct(GetWeatherResponse) as the output access point.
Note that this access point is created automatically when we load the web service.
- Deploy the model. In the Workflow Execution perspective, execute the process containing the Web service task.
Enter the name of a city and the appropriate country and complete the activity.
Figure: Enter city and country
The next activity displays all weather details of the entered city (in XML format).
Figure: Weather of the entered city