white bar background yellow bar background
Colorado Software Summit 2007 banner
Colorado Software Summit logo

The Best Way to Master a Technology Is to Teach It to Others

Paul Fremantle

WSO2 Inc.
United Kingdom

Building an Enterprise Service Bus Using Web Services and Apache Synapse v2

Apache Synapse is an open source project based on building an open ESB around the Web services standards and specifications. The Enterprise Service Bus — or ESB — is an approach for integrating different systems across a network. The session will cover how to achieve the three major aspects of an ESB: connectivity, mediation, and management using Apache Synapse. The session will explore how Synapse uses Apache projects such as Axis2, AXIOM, Sandesha, WSS4J as the core of a high-performance, lightweight, integration framework. The session will cover how to use Synapse to: integrate disparate systems; how to mediate messages, including using XSLT, XPath, scripting, and Java; how to manage and monitor Web services; how to support security, reliability, and transactions; and how to use Synapse with legacy and non-SOAP message formats.

Building Reliable Messaging Systems Using Web Services and WSRM

In this session we will cover how the OASIS Web Services Reliable Messaging standard allows Web services interactions and messages to be reliably delivered. WSRM is a new protocol that supports MQ or JMS like levels of reliable delivery on a completely open basis, with interoperability between systems including WebSphere, Apache Axis2 and Microsoft .NET. As well as taking a walkthrough of the specification, we will take a detailed look at some of the implementations available, including the Apache Sandesha project and the Microsoft Windows Communication Framework. The session will include detailed code examples and demonstrations of reliable messaging using WSRM. Paul is the co-chair of the Technical Committee that is standardising the WSRM specification, as well as involved in the Apache implementation, so this is a great opportunity to learn about this technology from one of the technical leaders.

Due to a family medical emergency, Eran Chinthaka was unable to attend the conference. The following two presentations Eran had prepared for the conference were instead delivered by Paul Fremantle.

Why Apache Axis2: The Future of Web Services

The Axis2 project, the successor of the Axis SOAP project, started with the goal of developing a next generation SOAP stack to serve as the core of the next generation Web services platform. Axis2 is centered around a high performance object model called AXIOM and is designed to be a very flexible SOAP engine supporting document-oriented, asynchronous communications as well as traditional RPC-style interactions. Axis2 has been carefully designed to allow other modules, such as Apache WSS4J (implementation of WS-Security, Secure Conversation and Trust) and Apache Sandesha (implementation of WS-Reliable Messaging) to be built on top of it and very easily integrated. This session will present the key concepts of the Axis2 architecture and provide insight into the next generation of Apache SOAP stacks.

Introducing AXIOM — Pull based XML Object Model Optimized for SOAP Processing

The AXIs Object Model (AXIOM) is a pull based XML object model, this time defined by the Axis2 project. AXIOM consists of two parts: a complete XML Infoset representation and a SOAP Infoset representation on top of that. The XML Infoset representation provides a JDOM-like simple API but is built on a deferred model via a StAX-based (Streaming API for XML) pull parsing API. A key feature of AXIOM is that it allows one to stop building the XML tree and just access the pull stream directly; thus enabling both maximum flexibility and maximum performance. This approach allows us to support multiple levels of abstraction for consuming and offering Web services in Axis2: using plain AXIOM, using generated code and statically data-bound data types and so on.

Photo of Paul Fremantle

Paul Fremantle is Co-Founder and Vice President of Technology at WSO2, a company devoted to creating top-quality open source XML and Web service software. Paul is heavily involved in the Apache Web Services initiative and in particular the Apache Synapse project. Paul currently chairs the OASIS Web Services Reliable eXchange (WS-RX) Technical Committee, which is standardizing the WSRM specification to create the industry standard for reliable message exchange over SOAP.

Paul was a Senior Technical Staff Member at IBM for 9 years. At IBM, Paul created the Web Services Gateway, and led the team that developed and shipped it as part of WebSphere Application Server. He was part of the team that put the Service Integration Bus technology into WebSphere Application Server 6. Previously Paul created the Web Services Invocation Framework (WSIF) and led JSR 110: Java APIs for WSDL, in the JCP.

Paul’s involvement in Open Source goes back to the original Apache SOAP project, where Paul donated code to enable access to Enterprise JavaBeans. He has also led IBM’s involvement in the Axis C/C++ project.

Paul has published many articles, both on the Web and in traditional forms, and has spoken at numerous industry conferences, including ApacheCon, Colorado Software Summit, XML Europe, Software Architecture, and others. Paul has published two books: Building Web Services in Java, 2nd Edition, and The XML Files.

Paul has an MA in Mathematics and Philosophy and an MSc in Computation, both from Oxford University.

Email: paul@wso2.com