FiveSight PXE BPEL Engine Released as Open Source

Discussions

News: FiveSight PXE BPEL Engine Released as Open Source

  1. FiveSight has released its PXE BPEL engine as open source under a combination of the CPL and MIT License.

    BPEL stands for Business Process Execution Language, and determines how a set of services interacts as a single process.

    The release includes side-by-side support for both BPEL4WS 1.1 and an early version of WS-BPEL 2.0. It also has JMX-based administration and management, pluggable persistence, a microkernel-style runtime suitable for standalone operation or embedding within an application server, connected debugging, and a set of commandline tools and Ant tasks for most common operations.

    The project is hosted at SourceForge, and a project wiki and other infrastructure are available.

    Threaded Messages (21)

  2. This is great news!
    I have been scouring the net like crazy after an open source BPEL/BPEL4WS engine that is reasonably light-weight and embedable recently.

    Hopefully this won't be to far off the mark.
    Does anyone have any experience of how this compares to Twister/Apache Agila?

    My very (rather: extremely) brief research into Twister/Agila gave me the impression it wasn't quite mature yet and wont be for some time yet. How mature is PXE?
  3. How mature is PXE?

    PXE is about two years old (older if you count some of its predecessors that were orchestration without being BPEL), and the design benefits from a couple rounds of experimentation and refactoring -- really digging down into the details of BPEL requires a substantial amount of work.

    One area where PXE distinguishes itself from other open source BPEL offerings at present is what it does not require, e.g., no servlet container, no application server, no Apache AXIS or JAX-RPC, no specific persistence layer, etc.

    Either way, you should be able to download and experiment with PXE without hitting any major roadblocks. Among other things, a functional test suite for BPEL is bundled with the distribution in the <tt>bpeltests</tt> command, and there are some <tt>expect</tt> scripts included in the source distribution that you can also use to sanity check a build.
  4. FiveSight has released its PXE BPEL engine as open source under a combination of the CPL and MIT License.BPEL stands for Business Process Execution Language, and determines how a set of services interacts as a single process.The release includes side-by-side support for both BPEL4WS 1.1 and an early version of WS-BPEL 2.0. It also has JMX-based administration and management, pluggable persistence, a microkernel-style runtime suitable for standalone operation or embedding within an application server, connected debugging, and a set of commandline tools and Ant tasks for most common operations.The project is hosted at SourceForge, and a project wiki and other infrastructure are available.

    Congratulations guys!

    PXE is currently our pick of open source BPEL implementation for ServiceMix - it comes highly recommended - and we are in the process of bundling it inside ServiceMix and testing the integration between our components, bindings, services and PXE.

    James
    LogicBlaze
  5. Good work Paul!

    We have also started using PXE with Mule and so far I'm really impressed with it.

    Cheers,

    Ross
  6. Thanks, Ross! We're hoping that cross-fertilization with other Java OSS projects (like Mule, ServiceMix, XFire, ...) will create an interesting bazaar for people building solutions, and one of the guiding principles for PXE has been and will continue to be doing the least we can to meet our goals (BPEL implementation) and the most we can to enable partners and collaborators.

    btw, I should comment that while I deserve a certain amount of credit, I'm just one piece of the puzzle -- Maciej Szefler (our BPEL TC rep) and Justin Guinney, FiveSight's other two original founders, invested (albeit quietly) a huge amount of effort in PXE over the past few years and should get a fair share of credit as well.
  7. Congratulation on making it all open source.

    I would be most interested to know what WS-BPEL2.0 is. My understanding from the BPEL TC in Oasis is that no such thing exists. Could you clarify what it is and what it's relationship is to the TC in Oasis. No doubt there is a simple explanation ;-)

    I do hope to try it out with WS-CDL generating to it in the near future.

    Cheers and keep up the good work.

    Steve T
  8. Congratulation on making it all open source.I would be most interested to know what WS-BPEL2.0 is. My understanding from the BPEL TC in Oasis is that no such thing exists. Could you clarify what it is and what it's relationship is to the TC in Oasis. No doubt there is a simple explanation ;-)I do hope to try it out with WS-CDL generating to it in the near future.Cheers and keep up the good work.Steve T

    Found it:

    http://www.oasis-open.org/committees/download.php/10347/wsbpel-specification-draft-120204.htm

    Cheers

    Steve T
  9. I would be most interested to know what WS-BPEL2.0 is.

    WS-BPEL 2.0 is the forthcoming name for the OASIS standard. Work is still under way, but we've gone ahead and supplied an implementation that includes the changes and issues resolved up to a point. (For example, the 2.0 syntax support includes support for the resolution of Issue 103 which dramatically simplified and improved variable access.) FiveSight has been an OASIS member since 2003, but issue resolutions, interim drafts, and mailing list archives for the WS-BPEL technical committee are all accessible to any interested parties -- so we're not blurring any distinctions between what's officially available to the public and not.

    We'll continue to update the 2.0 support as the specification progresses, so hopefully this gives people a way to experiment with the changes and see how it works for them in practice.
  10. Twister and ActiveBPEL[ Go to top ]

    Active Endpoints is also giving out an open source version of their BPEL engine, ActiveBPEL, under GPL. ActiveBPEL's open source version lacks support for process versioning and clustering.

    http://www.activebpel.com

    I did a quite comprehensive comparison between Twister and ActiveBPEL some while ago. ActiveBPEL was more mature and had better administration and process monitoring tools. Hopefully Twister will get a "development boost" with Agila merger.

    The biggest thing I learned from the comparison was that BPEL really needs some good development tools to be usable...
  11. Twister and ActiveBPEL[ Go to top ]

    ...is also giving out an open source version of their BPEL engine...

    I would like to emphasize that PXE is not an open source "version" of anything -- it's a complete product packaged as open source, so there is no upsell.
    The biggest thing I learned from the comparison was that BPEL really needs some good development tools to be usable...

    This is true, and the character of those tools is an open question. Yet another flowcharting tool isn't necessarily the answer; for example, I thought that Brian McCallister had an interesting idea with a non-XML Python-like syntax. There are also an emerging crop of full-blown modeling environments (Popkin, iGrafx, MagicDraw, ...) that can generate BPEL out of higher-level models.
  12. BPEL Tooling[ Go to top ]

    The biggest thing I learned from the comparison was that BPEL really needs some good development tools to be usable...

    Active Endpoints offers a high quality BPEL authoring tool called ActiveWebflow Professional, available at http://www.active-endpoints.com/products/activewebflow/awfpro. The product is an Eclipse plug-in and offers advanced features such as Web References, design-time simulation (for process debugging) and full BPEL code generation.
  13. BPEL Tooling[ Go to top ]

    Fred brings up an interesting thread -- what tools are people using to create BPEL right now? Oracle JDeveloper (now free)? Active WebFlow? ...Emacs? (I'm in the minority, I think: Emacs is my favorite, since the BPEL is more concise and correct than I've seen from graphical tools.) What tools would peeople want -- is a flowcharting tool (a.k.a. doodleware what developers really want when it comes to orchestration?
  14. BPEL Tooling[ Go to top ]

    Actually, we (Active Endpoints) believe that authoring complex services-oriented compositions often requires more than one tool. That's why we chose Eclipse as our IDE framework. Our ActiveWebflow plug-in provides rich visual interfaces for doing BPEL-specific development/testing/debugging, with other popular development tools (Java IDEs, WSDL/XML editors, profilers, etc.) just a few clicks away.

    As the saying goes, if your only tool is a hammer, all your problems begin to look like nails ;)
  15. BPEL Tooling[ Go to top ]

    Congratulations of the release: this will hopefully accelerate the adoption of BPEL!

    Regarding tooling, bpel itself is rather straightforward and can be edited with emacs, the challenge comes when you try to declare types, define xpath expressions, etc,. Those get tricky when you have to take into account schema definitions, namespaces, etc.

    As you mentioned Oracle offers a BPEL designer which can be both plugged into Eclipse and JDeveloper. We have announced last week that it will be *free* (which is always good!:-)).

    ::plug::
    For those of you how are at JavaONE and are interested in BPEL, we are presenting on Wednesday June 29th 2005 at 2:45pm a session around how to use BPEL with Java technologies. Focusing on BPEL+JSF and BPEL+JBI. The session name is TS-3532.

    Cheers,
    Edwin

    Oracle BPEL Process Manager
    http://otn.oracle.com/bpel
  16. Does Oracle BPEL use JESS?[ Go to top ]

    I saw an article on OTN that says Oracle's BP uses JESS. Is that correct?

    peter
  17. Does Oracle BPEL use JESS?[ Go to top ]

    In OC4J 10.1.3, we will a rules engine based on JESS. That rules engine is one of the rules engine which can be integrated with BPEL PM. We also integrate BPEL PM with iLog JRules, Corticon and Blaze. -Edwin
  18. I've been using Cape Clear (commercial) for some while and finds it pretty nice working with. Good tools for building orchestrations, messages and contracts.
  19. Rulesharp will help you more then BPEL[ Go to top ]

    Standards are great but not perfect. This means if something better then the standard comes out then following the standard is not best. BPEL jsr94 are not perfect. Rulesharp is database driven and has full benefits from doing so i.e: sql, jdbc, reporting, lazy load for less memory and performance, flexibility, structure, analyzing, monitoring, etc. At the same time it is simple :) See it for yourself at www.rulesharp.com randy
  20. I agree with ActivePoints remark in regards to the tool for designing the workflow is a key piece.

    However, The ActivePoints engine is GPL, which means you have to be careful what you use it for. Not sure how the PXE's MIT license plays out if you end up distributing a workflow with it's engine.

    Kudos, I'm looking at PXE right now :-)
  21. The ActivePoints engine is GPL, which means you have to be careful what you use it for. Not sure how the PXE's MIT license plays out if you end up distributing a workflow with it's engine.Kudos, I'm looking at PXE right now :-)

    Right -- GPL means that you have to be careful. The GPL/commercial model is intended to force you to trade-up to the commercial version for most use cases, and that's cool -- there's nothing wrong with charging money for software. That said, we chose a license for PXE with the intent of making it easy for people to embed PXE in other products and projects without licensing complications.

    For clarity, parts of PXE are licensed under the Common Public License ("CPL") 1.0, which is essentially the same license as for Eclipse, and parts are licensed under the MIT License. For the CPL licensed portions, you have to share changes that you distribute, and the the MIT Licensed portions, you can do pretty much whatever you want. There's a short licensing FAQ for PXE here.
  22. Licensing Clarifications[ Go to top ]

    The GPL/commercial model is intended to force you to trade-up to the commercial version for most use cases

    To be accurate, the GPL/commercial model (it's commonly called the "dual license" model) is not intended to force anyone to do anything. Dual license is about choices. If you are an end user organization that does not plan to redistribute the apps you create atop a GPL-licensed technology, you may use the GPL-licensed technology free of charge. If you are a commercial software company, you have to choose whether to contribute your derivative works to the community at large under the GPL, or keep those works private by acquiring a commercial license.
    For clarity, parts of PXE are licensed under the Common Public License ("CPL") 1.0, which is essentially the same license as for Eclipse, and parts are licensed under the MIT License. For the CPL licensed portions, you have to share changes that you distribute

    Right. So, regardless of which open source licensing approach is in play, developers need to understand the ground rules.

    Fred