Java Reference
In-Depth Information
<copy>
<from>$CustomerProcessEsbOperationIn.getCustomerFullNameEsb/
customerID</from>
<to>$GetCustomerFullNameIn.parameters/customerID</to>
</copy>
</assign>
So to make your assignment work, first declare a global variable called CustomerProcessEs-
bOperationIn . This variable is empty when the process starts, and then once the <receive>
activity is invoked, it gets is filled with the data coming into the CustomerProcessPartner-
Link . The operation and port type indicate the data types expected in the incoming operation.
In this example, that matches the incoming data that the Customer Lookup web service re-
quires, so just pass it straight through. If you wanted to do some massaging of the data, say,
with an XSL transformation, or using another standard function, this is a good opportunity to
do that.
The assignment just uses a basic expression to drill down to the customerID node of the in-
coming data element, and assigns it to the customerID node in the GetCustomerFullNameIn
variable. These are different message types, but they share this element, and that's why
you do the assignment. Note that you have to drill down through the parameters element
of the GetCustomerFullNameIn variable because its type corresponds to the getCustomer-
FullName , which was defined as document/literal/wrapped, and the default name for the
wrapper element is parameters .
Creating the outbound assignment
Now you're going to basically repeat the same process you just completed for the inbound
assignment to create the outbound assignment.
To create a new <assign> activity, click the Assign label in the Basic Activities section
of the palette and drag it onto the sequence between the invoke and reply activities. You
can double-click on the assign activity to bring up the Mapper. Click the arrows next to
Variables→GetCustomerFullNameOut→parameters→customerFullName (recall that this is
what is returned by your web service), and then on the right side of the canvas, click
to open Variables→CustomerProcessEsbOperationOut→getCustomerFullNameResponseEs-
b→customerFullName. This is the value that will be returned by your process service and out
through the client-facing WSDL.
Just as before, the $ is used to indicate that you're referencing a variable.
The following code snippet shows what you're generating when you do this in the IDE:
<variables>
<variable name="GetCustomerFullNameOut"
Search WWH ::




Custom Search