User Guide > Publishing Resources > Publishing Resources to a Web Service > Publishing a SOAP Data Service
 
Publishing a SOAP Data Service
This section describes how to add a SOAP 1.1 or 1.2 compliant data service.
To publish a SOAP data service
1. Select the Web Services node under the Data Services node in the resource tree.
2. Right-click and select New Composite Web Service.
3. In the Add Composite Web Service dialog, type a data service name for your new Web service.
4. Click OK.
5. From the resource tree, open the Web service that you just made.
6. Optionally, publish tables, views and procedures to the Web service.
a. Select one or more tables, view, or procedure in the resource tree and right-click.
b. Select Publish.
c. Optionally, in the Publish window, edit the name to use for the published resource.
d. Select the Web service to which you want the resource published.
e. Click OK.
If, for example, you published CompositeView to the Web service you just created, and the Web service is still opened to the SOAP panel, it would be updated to display the Web service properties, operations, and parameters.
7. In the Service portion of the screen, type or select values for the following properties.
If a property requires a value, a default value is already assigned to it.
Properties
Required
Description
Enabled
Yes
True (the default value) tells the system you want to use the information that you have defined on this tab.
Target Namespace
Yes
Replaces the default value with the location of your SOAP installation.
Port Type Name
Yes
Name of the port.
SOAP Web services are described with WSDL. WSDL defines a Port Type as an abstract collection of operations. Use a WSDL to describe the Web service and create a Port Type entry in the WSDL. The port type name is arbitrary, though it must be a legal QName.
Binding Name
Yes
A unique binding name that can be referenced from elsewhere in the WSDL definition.
Enable Contract First
Yes
The default value is false. Select true to point to your predefined WSDL and WSDL operations. For information on how to create the service, see Publishing a Contract-First WSDL and SOAP Data Service.
Enable MTOM
Yes
Valid values are true or false. Set to true to enable the use of Message Transmission Optimization Mechanism (MTOM), a method of sending binary data to and from Web services. After it is enabled you must complete the definition of binary parameter types.
Security Policy
Yes
List shows all of the available policies that are defined under localhost/policy/security.
SAML Validator Class
No
Name of the Java class that lets users validate SAML assertions.
Subject Mapper Class
No
Define a Java class for your SAML content using TDV’s extended Java API Subject Mapper, which can be found in:
<TDV_install_dir>\apps\extension\docs\com\compositesw\extension\security\SubjectMapper.html
Use method samlSubjectToCompositeUser to map samlSubject to an existing TDV user, so that this SAML principal has the same privileges as that user.
After you create the Java class, save the JAR file to the <TDV_install_dir>\apps\server\lib folder.
Endpoint URL Path
Yes
The path of the endpoint URL for this Web service. Default is the name (with spaces removed) you used for the Web service.
SOAP11 Context Url Path
 
The path in which a SOAP object should appear. Associating an object to a certain page on your site.
SOAP12 Context Url Path
 
The path in which a SOAP object should appear. Associating an object to a certain page on your site.
WSDL URLs
 
Property heading.
HTTP/SOAP 1.1
 
The URL of the HTTP SOAP 1.1 WSDL file that can be used to access the operation.
HTTP/SOAP 1.2
 
The URL of the HTTP SOAP 1.2 WSDL file that can be used to access the operation.
HTTPS/SOAP 1.1
 
The URL of the HTTPS SOAP 1.1 WSDL file that can be used to access the operation.
HTTPS/SOAP 1.2
 
The URL of the HTTPS SOAP 1.2 WSDL file that can be used to access the operation.
If you have published views or procedures to this service, you can perform following steps.
8. From the upper part of the Operations section, select a Web service table, view, or procedure that is available for use.
9. In the lower part of the Operations section, type or select values for the properties listed in the following table.
Property
Description
Security Policy
Lists all available policies defined under localhost/policy/security.
SOAP Action
Typically, this field is unused. If this value is defined as part of your contract-first WSDL, the value is displayed in this field.
Input Message
 
Parameter Style
This required value applies to all parameters.
Select WRAPPED when multiple parameters might use the BODY location. The wrapper element is the child of the SOAP BODY and the parameter elements are children of the wrapper element.
Select BARE when exactly one parameter with a location of BODY and its element is the only child of the SOAP BODY. All other parameters of the same direction must be mapped to another location—for example, HEADER.
Wrapper
Element Name
Unique name to give to the wrapper element. For example, if you type wrappedOrderParams here, the WSDL XML includes an element:
<wrappedOrderParams> </wrappedOrderParams>
Element Type
Row element type.
Message Name
Unique name for the wrapper message.
Part Name
Name of the message part that represents the wrapper element.
Security Policy
Security policy to use on the input message.
Output Message
 
Parameter Style
This required value applies to all parameters.
Select WRAPPED when there might be multiple parameters that use the BODY location. The wrapper element is the child of the SOAP BODY and the parameter elements are children of the wrapper element.
Select BARE when there is exactly one parameter with a location of BODY and its element is the only child of the SOAP BODY. All other parameters of the same direction must be mapped to another location, for example, HEADER.
Wrapper
Element Name
Unique name to give to the wrapper element. For example, if you type wrappedOrderParams here, the WSDL XML includes an element:
<wrappedOrderParams> xxx </wrappedOrderParams>
Element Type
Element type of your row element.
Message Name
Unique name to give to the wrapper message.
Part Name
Name of the message part that represents the wrapper element.
10. Repeat for each operation or view you want to define for the Web service.
11. If your operation has parameters, go to the upper part of the Parameters portion of the screen and select a parameter from the list.
12. In the lower part of the Parameters portion of the screen, you can view and edit the properties and values of the parameter you selected in the upper part of the Parameters section.
Property
Description
Name
Name of the parameter. Cannot be edited.
Element Name
Fully qualified name to give to the input parameter, output parameter, or output cursor; or name (relative to the cursor path) to give to the column.
Direction
(Not listed for columns) Indicates the direction of the cursor. Cannot be edited.
Binding Location
When the selected operation is a procedure, you can define binding locations. If the message is BARE, exactly one parameter can use the BODY binding location.
The available locations for input are:
BODY, HEADER
The available locations for output are:
BODY, FAULT, HEADER, HEADERFAULT
Row Element Name
(Cursor only) Unique name to give to the row element of the cursor. For example, if you type myFavoriteRow here, the WSDL XML includes an element:
<myFavoriteRow> </myFavoriteRow>
Row Type Name
(Cursor only) Type value of this row element.
Cursor Type Name
(Cursor only) Unique name for the type that defines the global cursor element.
MTOM CONTENT TYPE
If the parameter is binary, you should set the parameter values to VALUE_TYPE_BINARY, VALUE_TYPE_BLOB, or VALUE_TYPE_CLOB.
The content-type values are available from a list of values. The default is application/octet-stream (a binary file). This header indicates the Internet media type of the message content, consisting of a type and subtype, that is accepted.
13. Repeat for each parameter that is to be defined for the Web service.
14. Save your definition.