Chapter 15. Exposed Serial Process runtime pattern: SOA profile 465
mapping. It is used to provide a standard, consistent interface for the internal
processes to access external processes. The use of an Exposed ESB Gateway
minimizes the disruption caused by changes in the external partner
infrastructure.
In the Directory and Security services node, the service integration bus within
WebSphere Application Server Network Deployment V6.0.2 is configured secure
all transactions to the external Partner Zone to use WS-Security integrity and
confidentiality.
The IBM HTTP Server V6 acts as an Adapter Connector by providing protocol
transformation to SOAP/HTTPS thus delivering transport level security between
the enterprise and the partner organizations.
15.3 Development guidelines
This section describes how to implement the Exposed Serial Process and
integrate the process with an ESB.
15.3.1 Scenario implementation: Serial process interaction
The WS-I sample scenario implemented in Chapter 15, “Exposed Serial Process
runtime pattern: SOA profile” on page 459 is the starting point for this chapter.
The Warehouse business process is modified to invoke an inbound service on
the ESB implemented as the service integration bus of WebSphere Application
Server. The ESB forwards the request to the Web services gateway. We create a
mediation service on the gateway which is responsible for creating and sending
requests to different manufacturers (if required). When the manufacturers reply,
the mediation service collates these responses and forwards a single response
to the Warehouse business process through the ESB.
We use the Process Choreographer tool in WebSphere Studio Application
Developer Integration Edition to create and generate deployment code for a
business process.
Note: This section requires WebSphere Studio Application Developer
Integration Edition V5.1.1 plus Cumulative Fix 010 or higher installed.
466 Patterns: Extended Enterprise SOA and Web Services
15.3.2 Creating the basic infrastructure
This scenario assumes that you have completed the scenario described in
Chapter 14, “Exposed Serial Process runtime pattern: generic profile” on
page 419. We build from that infrastructure in this chapter.
If you did not complete building the business process in the previous chapter, you
can add it by importing the project interchange file CompletedProcess.zip into a
workspace in WebSphere Studio Application Developer Integration Edition. You
can find this file in the SerialGeneric directory in the additional material supplied
with this redbook.
Before you can build the WS-BPEL business process for this scenario, you need
to make the following changes to the base infrastructure:
Create a service integration bus.
Create an HTTP endpoint listener for the bus.
Define a Manufacturer inbound service on the service integration bus.
Export the Manufacturer inbound service WSDL.
Creating a service integration bus
Create a new service integration bus on the ITSOGoodProfile server running on
the itsogood.itso.ral.ibm.com machine as follows:
1. Log in to the ITSOGoodProfile server administration console.
2. Create a new service integration bus called ESBBus:
a. Expand Service integration, click Buses ,and click New to create a new
bus.
b. Enter a name of ESBBus and click Apply.
3. Click Bus members and click Add. Click Next, then Finish to create the bus
member.
4. Save your changes.
Creating an HTTP endpoint listener
To enable clients to communicate to ESBBus using SOAP/HTTP, create an HTTP
endpoint listener as follows:
1. Click Servers → Application Servers → server1 → Endpoint listeners.
2. Create a new Endpoint listener:
a. Click New.
b. Enter a Name of SOAPHTTPChannel1, a URL root of
http://itsogood.itso.ral.ibm.com:9080/wsgwsoaphttp1 and a WSDL
serving HTTP URL root of http://appsrv1a.itso.ral.ibm.com/wsdl
Chapter 15. Exposed Serial Process runtime pattern: SOA profile 467
c. Click Apply.
3. Assign the endpoint listener to ESBBus:
a. Click Connection Properties.
b. Click New.
c. Set the Bus name to ESBBus and click OK.
4. Save your changes.
Defining a Manufacturer inbound service
Add a Manufacturer inbound service to the ESBBus service integration bus as
follows.
1. Click Service integration → Buses → ESBBus → Inbound Services.
2. Define an inbound service called ManufacturerService:
a. Click New.
b. Leave the Service destination name to default. We will change it later.
c. In the Template WSDL location field enter
http://appsrv1a.itso.ral.ibm.com/wsdl/Manufacturer_Impl.wsdl
d. Click Next, and Next.
e. Set the Inbound service name to ManufacturerInboundService, then click
Next.
f. Click Finish.
3. Change the inbound port name to Manufacturer:
a. In the ManufacturerInboundService properties click Inbound Ports.
b. Click on the existing inbound port name.
c. Set the Name field Manufacturer
d. Click OK.
4. Save your changes.
Exporting the Manufacturer inbound service WSDL
We need to export the WSDL describing how to invoke the Manufacturer inbound
service so it is available to the business process we build in WebSphere Studio
Application Developer Integration Edition. Perform the following steps:
1. Click Service integration → Buses → ESBBus → Inbound Services →
ManufacturerInboundService.
2. Export the Manufacturer inbound service WSDL files to the local file system:
a. Click Publish WSDL files to ZIP file.
Get Patterns: Extended Enterprise SOA and Web Services now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.