| By Paul Maurer | Article Rating: |
|
| May 26, 2007 02:15 PM EDT | Reads: |
23,307 |
(SYS-CON Media) - We last looked at the Active Endpoints Inc. product suite back in May of this year. Since then, the team at Active Endpoints has been busy working towards the 3.0 release of its ActiveBPEL Designer and engine.
The biggest and most interesting enhancement is full support for all WS-BPEL 2.0 constructs. This feature will let users gain early access and experience with the upcoming OASIS standard.
The folks at Active Endpoints carefully thought through how to support users in their move to WS-BPEL 2.0. This resulted in the ability of BPEL 1.1 and WS-BPEL 2.0 processes to co-exist during design, test, and execution in both the designer and the engine. This lets users migrate their processes at their own pace. I've been burned in the past by products that required a big bang conversion so the ability to support 1.1 and 2.0 processes easily is a huge win.
ActiveBPEL Designer
My last ActiveBPEL review focused on the designer tool so I won't spend much time on it here except to point out a few enhancements. (Figure 1)
First of which is the ability to migrate any valid BPEL1.1 process to a WS-BPEL 2.0 proces. This is done by saving the existing 1.1 process as a WS-BPEL 2.0 process. During this "Save As" step ActiveBPEL will convert as much of the process syntax as possible and report conversion issues on any BPEL sections that couldn't be converted to the 2.0 syntax. These issues are displayed in the designer as static analysis errors. Users can then correct any errors. Once this is done, the user has access to all the new 2.0 features. Again, another nicely thought out touch for converting a process. I was able to convert one of my existing 1.1 processes and correct any issues easily.
Finally, Active Endpoints has added some of the obligatory GUI enhancements such as grids, anchoring annotation, and scope level auto-layout. The ActiveBPEL Designer continues to be a well-thought-out and constructed tool.
Engine Basics
The ActiveBPEL Engine manages BPEL processes. For those new to BPEL, a BPEL process is a collection of Web Services with various interactions specifically orchestrated to complete some portion or all of a business process. Each Web Service is treated like a black box that does some part of the process. Ordering the Web Services calls, information passed to and returned from the calls, and conditional execution are called orchestration. Its details are defined in the Business Process Execution Language specification (the BPEL Spec).
The ActiveBPEL Engine is designed to run in most of today's Application Servers. I had the WebLogic 9.2 application server handy so that acted as my test bed. The ActiveBPEL Engine also requires a database, so I downloaded and installed MySQL 5.0. The installation wizard does a nice job of walking you through the installation and it automatically configured the application server based on my responses. Keep in mind you still have to know how to configure your application server of choice. I had to ensure that the appropriate database drivers were set up and that my server was clustered, but the ActiveBPEL wizard handled the engine-specific setup nicely.
Once I had the product installed on the server, I was able to load up an existing 1.1 BPEL process. I specifically chose the process I created for the original review back in May. It loaded and ran in the server without incident. I then saved the process as a 2.0 process. There were a few minor errors that I quickly fixed then deployed the new processes to the server and again ran it without any problems. Granted my process wasn't incredibly complex, but it was still nice to see everything work as advertised.
Process Versioning
The ActiveBPEL Engine supports versioning processes. Various versions of a process can execute in the engine concurrently. Versioning includes effective dates and expiration dates of processes. This is a great feature and invaluable when you're cutting over to new processes. I've especially seen this come in handy when consulting in the past for a company in the power industry. Government agencies dictate how the business operates and when changes to their processes must be effective. Having effective and expiration dates are a must in this kind of environment.
The ActiveBPEL Engine is also smart about how it handles expiration of running processes. It gives the user a choice of terminating the process and allowing it to continue to run to completion, or migrating the process to the new version. Process migration sounds a bit dicey and the manual outlines its limitations, but I'm sure there will be users out there who won't be able to live without it.
Process Deployment
When describing my test, I glossed over the deployment process. The ActiveBPEL Designer is the recommended tool for deploying BPEL processes to the ActiveBPEL Engine. It packages the various files that make up the selected process in a business process archive (.bpr) file. The tool supports automatic deployment of the .bpr file to the engine. It can also generate an Ant script to re-deploy the file.
When you use ActiveBPEL Designer to create a .bpr file, the .bpr wizard generates a resource catalog. The data in the catalog is displayed in the engine's administration console. The catalog also provides a way for the engine to find WSDL files, schema, and other resources in the deployment archive.
Administration Console
As said above, the ActiveBPEL Engine provides the obligatory administration console, but again it's nicely done. You can inspect processes while they're running. The process page even displays the process details and the process diagram.
For users who run large process sets, there's a nice feature that filters processes. Active Endpoints even provides a nice expression builder to aid in creating fairly complex criteria for selecting the processes to view.
Custom Invocation
My favorite feature in the engine is its ability to implement a custom invocation handler for service endpoints. This lets a process bypass the creation and transport of SOAP messages over Axis. The process's outbound message is routed directly to a service
Custom invocation handlers can provide a more efficient technique for communicating between processes and services on the same machine. It can also take advantage of an alternate SOAP engine or provide messaging to an application that's not exposed as a Web Service.
Custom invocation handlers are implemented as Java classes, EJB containers, or .NET assemblies that implement the engine's custom invocation interface. The BPEL process's deployment descriptor contains a custom invoke handler attribute for the partner role service. The custom handlers are loaded by ActiveBPEL and used to call out to a Partner Role service endpoint when the service is invoked in a BPEL process.
The bottom line with this feature is that you can co-locate chatty services and set up highly efficient messaging for high-volume processes. This is very cool, sort of a "pimp my ride" for the BPEL crowd.
Licensing
As stated in my previous review of the product, the ActiveBPEL Engine core is an open source product. The designer tool isn't, but it's still freely downloadable from the Active Endpoints Web site.
To get access to the high-end engine features like process versioning and clustering you'll have to license the Enterprise product. The cost of the Enterprise product varies based on the deployment platform and ranges from a low-end Tomcat-enabled version to a J2EE-enabled version that can run on a mainframe.
Support
Active Endpoints, Inc. offers a few support options. First, for open source users, forum- and mailing list-based support is provided. There's also a premium support forum for users with a valid product serial number. For enterprises with higher support demands, incident-based support can be purchased.
Conclusion
Active Endpoints, Inc. continues to stay out in front of the BPEL standard with thoughtful features for support of WS-BPEL 2.0 migration. The BPEL design tool and execution engine continue to be freely downloadable and well documented with good community support. Teams looking to move toward the WS-BPEL 2.0 standard should consider Active Endpoints' 3.0 version.
Product Info
Company
Active Endpoints, Inc.
Three Enterprise Drive
Shelton, CT 06484
Web: www.active-endpoints.com
E-mail: info@active-endpoints.com
Licensing Information
ActiveBPEL Designer: Free
ActiveBPEL Engine (Open Source): Free
ActiveBPEL Enterprise: $7.5k - $30k per CPU based on deployment platform
Testing Environment
OS: Windows XP Professional (Service Pack 2)
Hardware: Intel Pentium M Processor with
2GHz - 1GB RAM
Published May 26, 2007 Reads 23,307
Copyright © 2007 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Paul Maurer
Paul Maurer is a principal in the financial services practice of a leading consulting services company.
- Kindle 2 vs Nook
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- Confessions of a Ulitzer Addict
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- It's the Java vs. C++ Shootout Revisited!
- Cloud Computing Can Revitalize Your Career as Software Developer
- IBM Could "Reinvent" Java: Mills
- Oracle & Cloud Computing: Exclusive Q&A with SVP Richard Sarwal
- A Brief History of Cloud Computing
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- JavaServer Faces (JSF) vs Struts
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- What's New in Eclipse?
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- i-Technology Predictions for 2007: Where's It All Headed?







































