Messages received by a Rhapsody web service are routed to a Web Service Hosting communication point, which allows the messages to be routed in Rhapsody. The configuration of the communication point controls how the incoming SOAP messages for the web service are translated to Rhapsody messages and message properties, and vice versa for the responses. In other words, the Web Service Hosting communication point provides a bridge between the web service and the Rhapsody messaging system by converting the SOAP requests, responses and faults to and from Rhapsody messages. Unlike other communication points, which have a Configuration tab, this communication point uses a custom user interface.

Multiple Web Service Hosting communication points can implement the same operations for a web service. Using multiple Web Service Hosting communication points allows incoming messages to be processed by one of those communication points, thereby providing a form of load balancing. The communication points fail to start if the set of operations are not exactly the same.

Rhapsody messages are populated, using content from the SOAP request, in one of the following ways:

  • The Rhapsody message body receives the entire contents of the SOAP body.
  • The Rhapsody message body receives the entire SOAP envelope.
  • The Rhapsody message body and properties are populated by extracting values from the SOAP message using XPaths.

SOAP response and faults are populated, using content from the Rhapsody message, in one of the following ways:

  • The Rhapsody message body is used as the contents of the SOAP body.
  • The Rhapsody message body is used as the entire SOAP envelope.
  • You can provide a template XML file for the contents of the SOAP body, then the template is populated using message properties and the Rhapsody message body (using XPaths to refer to locations in the template).

In order to configure the Web Service Hosting communication point to send a fault response, the message property rhapsody:SoapFault must be set on the Rhapsody message and the Web Service Hosting communication point must have the fault response tab configured.

Supported Operational Modes: In -> Out, Out -> In, Input.

Configuration Properties

Click the Edit Communication Point Configuration link to view the properties you can configure:

 

Property Description
Web Service Select a web service from the list. If no web services have been created, then this communication point cannot be configured. If the web service is changed after you add operations to the communication point, Rhapsody displays a warning to indicate that changing the web service will delete the existing operations.
Operations The operations that have been implemented on this communication point. The view displays how the Input, Output and Fault elements are mapped to the Rhapsody messages. 
A communication point may implement more than one operation for the same Web service. Refer to Web Service Hosting Operations for details.
Timeouts

In addition to the response fault mappings, the communication point can also send a custom SOAP fault if a response timeout occurs. These are optional parameters, and allow the communication point to return a static SOAP response when the timeout occurs. They are configured separately for SOAP 1.1 and 1.2, and set the entire SOAP envelope that will be used as the response. 
This timeout is configured for the communication point as a whole, not on a per operation basis. 

The communication point provides a configuration property to configure a static response to be sent when a timeout occurs (only for the In->Out mode). If this property is not set, then a standard SOAP fault is sent. If the request was synchronous, then an HTTP response code of 503 is used when returning the fault.