Create a WSDL file that contains multiple services that use the same portType.

Invoking an Asynchronous Web Service from a BPEL Process 8-13 Use TCP tunneling to view SOAP messages exchanged between the BPEL process service component flow and the web service including those containing the correlation ID. You can see the exact SOAP messages that are sent to, or received from, services with which a BPEL process service component flow communicates. You insert a software listener between your BPEL process service component flow and the web service. Your BPEL process service component flow communicates with the listener called a TCP tunnel. The listener forwards your messages to the web service, and also displays them. Responses from the web service are returned to the tunnel, which displays and forwards them back to the BPEL process service component.

8.4.1 How to Use WS-Addressing in an Asynchronous Service

WS-Addressing is a public specification and is the default correlation method supported by Oracle BPEL Process Manager. You do not need to edit the .bpel and .wsdl files to use WS-Addressing.

8.4.1.1 Using TCP Tunneling to See Messages Exchanged Between Programs

The messages that are exchanged between programs and services can be seen through TCP tunneling. This is particularly useful when you want to see the exact SOAP messages exchanged between the BPEL process service component flow and web services. To monitor the SOAP messages, insert a software listener between your flow and the service. Your flow communicates with the listener called a TCP tunnel and the listener forwards your messages to the service, and displays them. Likewise, responses from the service are returned to the tunnel, which displays them and then forwards them back to the flow. To see all the messages exchanged between the server and a web service, you need only a single TCP tunnel for synchronous services because all the pertinent messages are communicated in a single request and reply interaction with the service. For asynchronous services, you must set up two tunnels, one for the invocation of the service and another for the callback port of the flow.

8.4.1.1.1 Setting Up a TCP Listener for Synchronous Services Follow these steps to set up a

TCP listener for synchronous services initiated by an Oracle BPEL Process Manager process: 1. Visit the following URL for instructions on how to download and install Axis TCP Monitor tcpmon http:ws.apache.orgcommonstcpmon 2. Visit the following URL for instructions on how to use tcpmon: http:ws.apache.orgaxisjavauser-guide.html 3. Place axis.jar in your class path. 4. Start tcpmon: C:\...\ java org.apache.axis.utils.tcpmon localport remoteHost port_on_which_remote_server_is_running 5. In the composite.xml file, add the endpointURI property under binding.ws for your flow to override the endpoint of the service.