- Oracle SOA BPEL Process Manager 11gR1:A Hands-On Tutorial
- Ravi Saraswathi Jaswant Singh
- 468字
- 2021-08-20 16:47:09
Communicating between BPEL to/from Java
To reuse and integrate applications, one can create web services using XML and HTTP. Web Service Description Language (WSDL) is an XML-based language for describing web services. The web services can be located and invoked over the Web using WSDL from the service providers.
A WSDL contains an element named <binding>
which describes how the message is transmitted on the wire and a <service>
element that contains the location of the web service.
The <portType>
element in WSDL provides a set of operations for the calling clients. Port type is very similar to the concept of interfaces in Java. Java interface specifies methods that a calling client can consume but only by specifying a method of its own. Similarly, Port type in WSDL specifies the operations available that a calling client can consume but only by specifying an operation of its own.
Usually BPEL process consists of multiple steps that provide an overall process. Each step is called an activity. BPEL interacts with external services either by invoking operations on external web services or by receiving invocations from external entities. In simple words, it is either the consumer that invokes operations to others or the provider that receives invocations from others.
Invoking a BPEL process from Java
BPEL is a workflow system that manages coordination and communication for multiple concurrent conversations at the same time. Administrators can view the status of each request in the Enterprise Manager (EM) console.
BPEL provides client interfaces via SOAP, JCA, or native Java. BPEL itself is a service that can be invoked from Java programs. BPEL processes can be invoked using Oracle-provided Java APIs. Usually the BPEL processes are invoked from a Java program using Partner Link.
A BPEL process is available for invocation from standalone Java using one of the following interfaces:
- WSDL Interface
- BPEL Process Manager Java API
- JDeveloper Web Services Proxy
- Business delegate Java interface
Invoking BPEL is similar to calling any other web service from a Java program. BPEL implements a service that is defined in the WSDL. In case you are using Eclipse or NetBeans for writing the Java code, right-click on your project and select New Web Service Client. Select the WSDL for a BPEL process in the dialog box.
BPEL can be initiated from Java using business delegate Java interface from a locally or remotely used RMI. Partner Link allows BPEL to have conversations with WSDL-defined web services.
In JDeveloper, we can invoke a BPEL process from Java programs using the SOAP interface or native Java interfaces. The following figure shows the structure of invoking a BPEL process:

In Java, the invocation of web services is performed using the JAX-RPC library. JAX-RPC Java API enables Remote Procedure Calls (RPC) and XML-to-Java and Java-to-XML mapping. Use generic Java API to invoke a BPEL process.
- jQuery Mobile Web Development Essentials(Third Edition)
- 玩轉(zhuǎn)Scratch少兒趣味編程
- ServiceNow Application Development
- UML和模式應(yīng)用(原書第3版)
- Java 9 Concurrency Cookbook(Second Edition)
- Rake Task Management Essentials
- MATLAB 2020 從入門到精通
- INSTANT CakePHP Starter
- Mastering AndEngine Game Development
- EPLAN實(shí)戰(zhàn)設(shè)計(jì)
- INSTANT OpenNMS Starter
- MongoDB權(quán)威指南(第3版)
- 移動(dòng)界面(Web/App)Photoshop UI設(shè)計(jì)十全大補(bǔ)
- Learning JavaScript Data Structures and Algorithms
- HTML5秘籍(第2版)