Comments
litl_phil wrote: While it's nice that Google and Acer share the vision of cloud-based computing, it's also worth noting that we at litl already have a webbook on the market (available at litl.com) that runs our own cloud-based OS. Unlike Chrome, litlOS is focused on creating a new and better web experience for the home, so we don't have the usual browser interface, we have our own innovative UI. In conjunction with easel mode (litl's inverted-V position) and our growing cohort of litl channels (special apps t...
Cloud Computing
Conference & Expo
November 2-4, 2009 NYC
Register Today and SAVE !..


2008 West
DIAMOND SPONSOR:
Data Direct
SOA, WOA and Cloud Computing: The New Frontier for Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
GOLD SPONSORS:
Appsense
User Environment Management – The Third Layer of the Desktop
Cordys
Cloud Computing for Business Agility
EMC
CMIS: A Multi-Vendor Proposal for a Service-Based Content Management Interoperability Standard
Freedom OSS
Practical SOA” Max Yankelevich
Intel
Architecting an Enterprise Service Router (ESR) – A Cost-Effective Way to Scale SOA Across the Enterprise
Sensedia
Return on Assests: Bringing Visibility to your SOA Strategy
Symantec
Managing Hybrid Endpoint Environments
VMWare
Game-Changing Technology for Enterprise Clouds and Applications
Click For 2008 West
Event Webcasts

2008 West
PLATINUM SPONSORS:
Appcelerator
Get ‘Rich’ Quick: Rapid Prototyping for RIA with ZERO Server Code
Keynote Systems
Designing for and Managing Performance in the New Frontier of Rich Internet Applications
GOLD SPONSORS:
ICEsoft
How Can AJAX Improve Homeland Security?
Isomorphic
Beyond Widgets: What a RIA Platform Should Offer
Oracle
REAs: Rich Enterprise Applications
Click For 2008 Event Webcasts
Everyone wants to lower their capital expenditures and increase operational efficiency - it's a sign of the times. The economy of the past 12 - 18 months has forced all organizations to do more with less and become more efficient. While everyone can identify with the request to do more with less, th...
SYS-CON.TV
Oracle BPEL Process Manager
Making SOA design easy

Service-oriented architecture (SOA), while its underpinnings have been around for years, has recently become one of the most talked about topics in the IT industry. The interest in SOAs is largely due to the emergence of Web services and their ability to expose business applications through well-defined interfaces in a platform-independent manner. While an SOA need not be built using Web services, it certainly presents an attractive option for a variety of environments.

In an SOA, applications are exposed from a process-centric viewpoint. Some examples include services that handle processing credit card transactions, capturing and executing purchase orders, and viewing and updating inventories. The challenge is collecting these independent services into a viable business process. Enter the Oracle BPEL Process Manager (formerly Collaxa BPEL Server). The Oracle BPEL Process Manager provides an environment to design, develop, deploy, and manage the orchestration of independent applications through the use of Business Process Execution Language (BPEL).

The Oracle BPEL Process Manager is distributed with two main components: the server and the designer. The server handles the runtime execution, management and auditing of business processes. The designer, built on the Eclipse platform, provides the IDE for composing and deploying business processes.

Composing Business Processes
Composing a business in the BPEL Designer is a relatively simple process. At the most basic level, the primary tasks to compose a process include choosing whether to build a synchronous or asynchronous process, establishing Partner Links with services to be executed, linking the services together using Assign operations, establishing any control flow and special processing requirements, and gathering the necessary results for the endpoint.

For the purposes of this review, I will be creating a simple asynchronous business process that performs the following steps:

  1. Accept the name, postal address, and e-mail address of a user.
  2. Look up the current weather forecast for the user by zip code.
  3. Download information about the address the user has provided.
  4. Send an e-mail with the collected data to the user's provided e-mail account.
The system will incorporate publicly available Web services to get the weather forecast and address information. The e-mail will be sent from a Java application exposed as a stateless session bean.

As mentioned earlier, the Partner Links to the weather and address services must be established. Using the Add Partner Link wizard in the IDE, WSDL files of desired services may be downloaded into the process model. Developers may enter a URL to a WSDL file or browse a UDDI server to select the appropriate service. If the WSDL file provided does not define a partnerLinkType, the designer will automatically create a wrapper.

Once the Partner Links are established, the development of the actual flow within the business process may be done. Figure 1 shows the complete business process in the BPEL Designer. An instance of the business process is created when a SOAP message is received by the BPEL Server. The first yellow icon in the figure represents the Assign operation that extracts data from the received SOAP document and places it in the appropriate XML structures for both the Weather and Address services. The Assign operator in the BPEL Designer supports XPath queries, XPath expressions, BPEL XPath extension functions, Collaxa XPath extension functions, and custom XPath extension functions. It should be noted, however, that according to Collaxa's documentation, due to the complicated nature of developing transformation logic in the Assign operator many users of the BPEL Designer offload complex data transformation to Web services or Java applications that utilize XSLT and/or XQuery.

The next group of icons illustrates the parallel processing capabilities of the BPEL server. Since the weather and address services are independent of each other, they may be run simultaneously. After the Assign operation has mapped the SOAP message to the appropriate inputs for each service, they are executed. Any remaining tasks within the business process are put on hold until all elements within a parallel processing group have completed.

Once the weather and address services have returned, the e-mail service is executed. Since the e-mail service is exposed in the form of a stateless session Enterprise JavaBean, the Exec function is used. The Exec function is part of the namespace that defines the Collaxa-specific BPEL extensions. This tag allows the developer to write the Java code necessary to execute the e-mail service directly into the BPEL document.

Finally, the last Assign operator places a hard-coded success message in the response payload of the business process, which in turn is sent to the calling process via an asynchronous callback. (Note: The result of either of the Web service calls can just as easily be returned to the client).

Advanced Business Processes
In real-world scenarios, business processes typically include complicated logic for handling exceptions and gathering input from users. To that end, Oracle's BPEL Process Manager provides mechanisms to handle both. Notice that in Figure 1 there are two vertical labels - one blue (indicating it has the current focus) and the other gray. These labels and the boxes to which they are attached represent the BPEL Designer concept of Scope. Scope is analogous to a general code block prevalent in most programming languages and specifically related to the try/catch structure in Java. Business process logic may be attached to Scope definitions to handle message faults, perform compensating transactions, execute logic when messages are received, and execute logic when a long-running process reaches a predetermined timeout. This allows for the graceful recovery from errors and provides additional monitoring capabilities by responding to important events.

The Oracle BPEL Process Manager also contains a User Task element. A User Task is a service that assists with modeling processes that require user input in order to complete. It is accessible externally through a Java API upon which custom interfaces may be developed. Typically in a process that requires user input, an upstream process element creates a User Task and associates a payload of data with it; subsequently suspending downstream process nodes. That task and its associated data may then be accessed through an external application's user interface. Once the user has completed the required external process, the User Task API is called to assign a status of complete (or any other appropriate value). This in turn activates the remaining downstream processes.

Summary
As the development of applications continues to shift toward the process-centric viewpoint, the need to easily piece these components together to form a larger business process increases. Oracle's BPEL Process Manager is a very strong option for meeting this need. The designer provides the tools necessary to create complex business processes while the server delivers excellent management and auditing capabilities. Overall, the Collaxa BPEL Server is a very capable product and should be considered when building service-oriented architectures.

Oracle

Company Info
Oracle Corp.
500 Oracle Parkway
Redwood Shores, CA  94065
1-800-ORACLE1
United States Support Sales Phone: 1-800-833-3536

Collaxa, Inc.
1600 Bridge Parkway
Redwood Shores, CA 94065
Phone: (650) 801-6250
Fax: (650) 801-6251

About Brian Barbash
Brian R. Barbash is the product review editor for Web Services Journal. He is a senior consultant and technical architect for Envision Consulting, a unit of IMS Health, providing management consulting and systems integration that focuses on contracting, pricing, and account management in the pharmaceutical industry.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

SOA World Latest Stories
This coming Tuesday, December 8, at 2:00PM EST, SYS-CON.TV will be broadcasting live from its 4th-floor studio overlooking Times Square in New York City a very special "Power Panel" in which Cloud Computing Expo Conference Chair Jeremy Geelan and three top industry guests will be looki...
If you are like me, you are regularly receiving unsolicited email from various quarters, telling you about the latest and greatest SEO solutions on the planet. Just buy the book, or guide, or download the promotional whitepaper and this expert will offer you the latest "Secrets" to sea...
There's a lot of talk about how we need to focus on our buyers' issues and provide them educational insights to help them learn what they need to know to make buying decisions. Heck, I say it in my book...in several places, I think. I've said it on this blog, and I'll continue to say i...
This past weekend I set out explore some of the extension capabilities of Google Wave. One of the weaknesses that have been identified by many is the lack of integration with email. For me, in particular, because Wave is new, many Waves are being orphaned as those playing and testing o...
More good news for cloud computing! Google last week released its once mysterious Chrome Operating System to open source. Chrome OS, available in 2010 – is a web-based operating system that promises to boot up super-fast on a netbook – way faster than the time it takes to start your ba...
In CloudBerry Lab we are striving to make our customer service better. In this competitive market with the abundance of free offerings this is the only way to stay afloat. One of the ways to keep customers happy is to be very responsive when it comes to support request resolution. Shou...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON Featured Whitepapers
ADS BY GOOGLE