What is JibxSoap?

JibxSoap is a SOAP web services framework built around JiBX data binding. It provides the same advantages of flexibility and performance to developers implementing web services as the base JiBX project does for ordinary XML data binding. JibxSoap is designed around the latest web services interoperability recommendations, which lets it provide these advantages while still allowing for very easy configuration and deployment.

Many other SOAP web services frameworks are available for Java, including the popular Apache Axis implementation of the JAX-RPC standard for web services in Java. JibxSoap differs from these other frameworks in that it's designed from the start to support document/literal (doc/lit) web services rather than the older rpc/encoded (rpc/enc) style. This is an important distinction - the rpc/enc approach allows developers to easily expose simple method calls as web services, but creates problems for interoperability, especially with more complex data structures. Because of these problems, rpc/enc has been effectively deprecated by recommendations such as the Web Services Interoperability Organization's Basic Profile (WS-I BP), and replaced by the doc/lit approach.

The doc/lit approach to web services focuses on the actual XML data being exchanged. Rather than model method calls with parameters encoded in XML, the doc/lit approach uses W3C XML Schema definitions to fix the XML data formats. It's up to the participants in a web services interaction to process the XML payload of doc/lit SOAP messages in whatever manner is appropriate to their needs.

This focus on the XML formats is what allows JibxSoap to apply the power of JiBX data binding to doc/lit web services. JiBX is designed to support fast and flexible conversions between XML and Java objects. With doc/lit web services the contents of SOAP messages are just XML document fragments, which can be converted to and from Java objects using JiBX just the same as any other XML. All that's needed to support this is a framework that handles the SOAP wrappers and actual transport, which is what JibxSoap provides.

In benchmark tests to date JibxSoap provides at least 2 to 4 times the performance of the JAX-RPC reference implementation for doc/lit web services, and 2 to 5 times the performance of Axis for doc/lit web services using either direct handling or Castor data binding.

Check the online version of this page for updates on the subproject status.

Module Name Primary Developer Status
jibxsoap Dennis M. Sosnoski Alpha 0.2 release July 9, 2004