Implementing SOAP Web Services

www.altova.com Print this Topic Previous Page Up One Level Next page

Home > 

Implementing SOAP Web Services

With MapForce Enterprise edition you can generate Java or C# program code that implements SOAP Web services, from existing Web Services Description Language (WSDL) files. You can map data to WSDL operations as follows:

 

From the input of the WSDL operation to any data sources supported by MapForce, including flat files, XML, XBRL, EDI, Microsoft Excel, and databases.
From data sources supported by MapForce to the output of the WSDL operation.

 

MapForce supports WSDL 1.1 and WSDL 2.0 (for additional support information and limitations, see SOAP/WSDL Support Notes and Java SOAP Web Services Specifics).

 

Note:As an alternative to developing SOAP Web services from existing WSDL files, you can also deploy MapForce mappings to MapForce Server, where you can run them through an API or command line call. Additionally, with FlowForce Server, you can further expose the mapping as a generic (not SOAP) Web service on the machine where FlowForce Server runs. Any mapping designed for the BUILT-IN transformation language qualifies for deployment to MapForce Server or FlowForce Server. FlowForce Server is a dedicated server solution that is capable not only to convert MapForce mappings into generic Web services, but also run them as scheduled or on demand jobs. For more information, see Deploying Mappings to FlowForce Server.

 

Prerequisites

To create a Web service with MapForce, the WSDL file of the Web service is required. Note that you can design WSDL files and test SOAP requests with XMLSpy, for example. Additionally, you need platform-specific software required to build, deploy, and run a SOAP Web service, for example:

 

Java

Java Development Kit 1.7 or later
Apache Tomcat: https://tomcat.apache.org/
Apache Axis2: https://axis.apache.org/axis2/java/core/, a SOAP framework running within Tomcat
Apache Ant: https://ant.apache.org/

 

C#

Microsoft Visual Studio 2008, 2010, 2013, 2015, 2017
Microsoft Internet Information Services (IIS) version 5.0 or later.

 

How it works

The following diagram illustrates the entire process, starting from implementing a Web service from an existing WSDL file up to the stage when it can be called by SOAP client applications. Note that only the first two steps take place in MapForce. Steps 3 and 4 depend on the specifics of the third-party tools and environments used by your organization.

mff_soap_ws

 

The process illustrated above works as follows:

 

Step #

Description

1. Design the Web Service from an existing WSDL file

Once you have the WSDL file, you can start a new MapForce Web Service Project. A MapForce Web Service Project has a predefined structure that enables you to quickly access a particular WSDL operation or Web service in it. When you start a MapForce Web Service Project, you can optionally instruct MapForce to generate mapping files automatically for all WSDL operations found in the WSDL file. As an alternative, you can select individually the WSDL Services and WSDL Endpoints to be included in the MapForce Web Service Project. In the graphical user interface of MapForce, WSDL operations correspond to mappings, and the operation's input and output parameters appear as components in the mapping.

 

While working with mappings that include input or output of WSDL operations, you can preview the execution result as you would do for any other mapping. To do this, you need a sample SOAP request file (XML format) that conforms to the WSDL grammar of the Web service (such instance files can be generated with XMLSpy).

2. Generate Java or C# Code

When your Web Service Project is ready in MapForce, you can generate the C# or Java code either for individual mappings (for testing purposes), or for the entire project. In the latter case, MapForce creates a complete Web service server in the language of choice (C# or Java).

3. Build and deploy the Web service to a server

In this step, you compile the generated C# or Java code (outside MapForce) and deploy it to your custom Web server. Your Web server must be capable to host SOAP services and respond to SOAP client calls, see the "Prerequisites" section above.

4. Host Web service

The compiled Web service can be hosted by the server of your choice, for example:

Apache Tomcat
Internet Information Services (IIS)

5. Call Web service

The clients of the Web service include any application that is capable of generating SOAP calls and processing the response, including XMLSpy or MapForce itself.

 

For more information about step 1, see Creating SOAP Web Service Projects. For all other steps, see Example: Generating SOAP Web Services (C#) and Example: Generating SOAP Web Services (Java)


© 2019 Altova GmbH