Welcome to Apache Axis2/C

Apache Axis2/C is a Web services engine implemented in the C programming language. It is based on the extensible and flexible Axis2 architecture. Apache Axis2/C can be used to provide and consume Web Services. It has been implemented with portability and ability to embed in mind, hence could be used as a Web services enabler in other software.

Apache Axis2/C supports SOAP 1.1 and SOAP 1.2, as well as REST style of Web services. A single service could be exposed both as a SOAP style as well as a REST style service simultaneously. It also has built in MTOM support, that can be used to exchange binary data.

Apache Axis2/C is efficient, modular and is designed with extensibility. The extensible design allows it to support the full WS-* stack with the concept of modules. Apache Axis2/C is the Web services engine that supports the most number of WS-* specification implementations in C, with guaranteed interoperability. This enables using C in Service Oriented Architecture (SOA) implementations, and would be very useful when integrating legacy systems into SOA.

The following WS-* specifications are supported, either as built in modules or as separate Apache projects:

Latest Release

30th September 2007 - Apache Axis2/C Version 1.1.0 Released

Download 1.1.0

Key Features

  1. Support for one-way messaging (In-Only) and request response messaging (In-Out)
  2. Client APIs: Easy to use service client API and more advanced operation client API
  3. Transports supported: HTTP
    • Inbuilt HTTP server called simple axis server
    • Apache2 httpd module called mod_axis2 for server side
    • IIS module for server side
    • Client transport with ability to enable SSL support
    • Basic HTTP Authentication
    • libcurl based client transport
  4. Module architecture, mechanism to extend the SOAP processing model
  5. WS-Addressing support, both the submission (2004/08) and final (2005/08) versions, implemented as a module
  6. MTOM/XOP support
  7. AXIOM, an XML object model optimized for SOAP 1.1/1.2 messages; This has complete XML infoset support
  8. XML parser abstraction
    • Libxml2 wrapper
    • Guththila pull parser support
  9. Both directory based and archive based deployment models for deploying services and modules
  10. Description hierarchy providing access to static data of Axis2/C runtime (configuration, service groups, services, operations and messages)
  11. Context hierarchy providing access to dynamic Axis2/C runtime information(corresponding contexts to map to each level of description hierarchy)
  12. Message receiver abstraction
    • Inbuilt raw XML message receiver
  13. Code generation tool for stub and skeleton generation for a given WSDL (based on Java tool)
    • Axis Data Binding (ADB) support
  14. Transport proxy support
  15. REST support (more POX like) using both HTTP POST and GET
  16. Comprehensive documentation
    • Axis2/C Manual
  17. WS-Policy implementation called Neethi/C, with WS-SecurityPolicy extension
  18. TCP Transport, for both client and server side

Major Changes Since Last Release

  1. WS-Policy implementation
  2. TCP Transport
  3. Improvements to Guththila parser to improve performance
  4. Improvements to Java tool, WSDL2C, that generates C code
  5. Basic HTTP Authentication
  6. Memory leak fixes
  7. Many bug fixes

Archived News

Refer to information on the previous release.