How to Receive SOAP Headers in BPEL How to Send SOAP Headers in BPEL

Manipulating XML Data in a BPEL Process 6-55

6.23 Declaring Extension Namespaces in BPEL 2.0

You can extend a version 2.0 BPEL process to add custom extension namespace declarations. With the mustUnderstand attribute, you can indicate whether the custom namespaces carry semantics that must be understood by the BPEL process. If a BPEL process does not support one or more of the extensions with mustUnderstand set to yes, the process definition is rejected. Extensions are defined in the extensions element. Example 6–108 provides details. Example 6–108 Extension Namespace Declaration Syntax process ... ... extensions? extension namespace=myURI mustUnderstand=yes|no + extensions ... process The contents of an extension element must be a single element qualified with a namespace different from the standard BPEL namespace. For more information about extension declarations, see the Web Services Business Process Execution Language Version 2.0 Specification located at the following URL: http:www.oasis-open.org

6.23.1 How to Declare Extension Namespaces

To declare extension namespaces: 1. In a BPEL 2.0 process, click the Extensions icon above Oracle BPEL Designer. The Extensions dialog is displayed.

2. Select the Extensions folder, then click the Add icon.

The Extension dialog is displayed.

3. In the Namespace field, enter the extension namespace to declare. This namespace

must be different from the standard BPEL namespace.

4. If you want the extensions to be recognized by the BPEL process, select the Must

Understand checkbox.

5. Click OK.

6. Click Close.

6.23.2 What Happens When You Create an Extension

After you complete your design, the .bpel process looks as shown in Example 6–109 . Example 6–109 Extension with Custom Namespace extensions extension namespace=http:xmlns.mycompany.commyNamespace mustUnderstand=yes extensions 6-56 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite 7 Invoking a Synchronous Web Service from a BPEL Process 7-1 7 Invoking a Synchronous Web Service from a BPEL Process This chapter describes how to invoke a synchronous web service from a BPEL process. This chapter demonstrates how to set up the components necessary to perform a synchronous invocation. This chapter also examines how these components are coded. This chapter includes the following sections: ■ Section 7.1, Introduction to Invoking a Synchronous Web Service ■ Section 7.2, Invoking a Synchronous Web Service ■ Section 7.3, Specifying Timeout Values ■ Section 7.4, Calling a One-Way Mediator with a Synchronous BPEL Process For a simple Hello World sample bpel-101-HelloWorld that takes an input string, adds a prefix of Hello to the string, and returns it, visit the following URL: https:soasamples.samplecode.oracle.com

7.1 Introduction to Invoking a Synchronous Web Service

Synchronous web services provide an immediate response to an invocation. BPEL can connect to synchronous web services through a partner link, send data, and then receive the reply in the same synchronous invocation. A synchronous invocation requires the following components: ■ Partner link Defines the location and the role of the web services with which the BPEL process service component connects to perform tasks, and the variables used to carry information between the web service and the BPEL process service component. A partner link is required for each web service that the BPEL process service component calls. You can create partner links in several ways, including the following: – In the SOA Composite Editor, when you drag a Web Service from the Service Adapters section of the Component Palette into the Exposed Services or External References swimlane. For more information, see Section 2.3, Adding Service Binding Components or Section 2.4, Adding Reference Binding Components. – In the Oracle BPEL Designer, when you drag a Partner Link from the BPEL Constructs section of the Component Palette into the Partner Links swimlane. This method is described in this chapter.