About creating a data connection using a WSDL file

A web service, as defined by a Web Service Definition Language (WSDL) document, exposes a number of operations. For each operation, the WSDL file can define an input message, or an output message, or both. Input messages are sent to a server. The server can then reply with an output message. You can create and bind fields in a form design to one or many web services. The WSDL file describes the data description. The data description is used to build the WSDL data connection.

The WSDL data connection is different from the other types of data connections. A web service operation resembles a function call with input or output parameters or both. A particular field or fields may be the source of the input message and the destination of the output message.

Using Designer and a WSDL data connections, you can perform the following tasks:

  • Bind one or multiple operations within one or more web services.

  • Attach fields, subforms, and exclusion groups to the execution of a web service operation by a button click event.

  • Execute a web service operation from any event by way of script.

  • Enable script access to all returned elements of a web service regardless of whether those elements are bound to fields.

  • Use the SOAP 1.1 style communication (SOAP bindings and an HTTP/HTTPS transport).

  • Exchange data with a web service by using doc/literal exchange format.

  • Write client-side scripts by using the Acrobat SOAP JavaScript Object (which supports RPC/encoded).

These features are not supported:

  • Some XML Schema features

  • Protocols such as SMTP, FTP, and so on as the underlying transport for SOAP

  • Extensibility type elements

  • Web service discovery that uses UDDI

  • Remote Procedure Call (RPC) encoded SOAP messages

  • Use of HTTP POST and GET WSDL bindings

You can create a data connection using a WSDL document on a secure web server, which requires HTTP/HTTPS client authentication to control access or message level authentication to request a web service or both.

HTTP/HTTPS authentication happens at the transport layer where client verification is required to access the WSDL document and to connect to a secure web service. HTTP/HTTPS authentication accepts user name and password, user name and password digest, and client certificate as acceptable authentication:

  • User name and password authentication provides basic access verification, where the user is prompted with a login dialog box. The user name and password combination are sent as clear text and are not hashed before they are sent to the server.

  • User name and password digest authentication provides enhanced verification, where the user is prompted with a login dialog box. However, the user name and password are hashed before they are sent to the server.

    Note: The login dialog box indicates the name of the server and the realm to which the user is attempting to connect. Because there may be several realms set up on a particular server, knowing this information can help the user to determine which credentials they require to log in.
  • Client certificate authentication provides digital ID verification, where the user is prompted with the Select Digital ID dialog box listing the available digital IDs, and selects the correct digital ID to send to the server for authentication.

    Note: To use client certificate authentication, you need to have a digital ID available in the Windows Certificate Store or in the Designer Digital ID Files store, ready to use when you create a WSDL data connection. See Importing digital IDs.

Message level authentication happens at the SOAP (Simple Object Access Protocol) message layer where client verification requires a security token (included in the SOAP message header) to connect to a secure web service. The message level layer accepts user name and password authentication, where the user is prompted with a login dialog box. Acrobat 9.0 or later, supports user name and password message level authentication.

When you create a secure WSDL data connection, you specify (optionally) the type of credentials to accept for HTTP/HTTPS and message level authentication. The credentials for HTTP/HTTPS authentication are sent as part of the HTTP/HTTPS protocol header. The credentials for the message layer (SOAP) are used to create a security token (which is included in the SOAP message header). Keep in mind that you must specify the type of credentials to accept, when you have a server workflow where the server must provide credentials without user interaction.

Note: If you try to connect to a WSDL file in the Workbench repository, you may get an error indicating that the file cannot load. You must first open the WSDL file in Workbench before you create the data connection.

// Ethnio survey code removed