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 WebServices. 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 Webservices. 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

July 21, 2008 Apache Axis2/C - Version 1.5.0 Released

Download 1.5.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. Supports IIS 5.1, 6 and 7
    • Client transport with ability to enable SSL support
    • Basic HTTP Authentication
    • AMQP Transport based on Apache Qpid (Experimental)
    • 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

Changes Since Last Release

  1. AMQP Transport support with Apache Qpid. (At an experimental stage and not working under Windows)
  2. Modifications to IIS Module to support IIS 6 & 7.
  3. Added a JScript file to automate IIS module registry configuration
  4. Specifying the MEP in the services.xml for non in-out messages made mandatory
  5. Improved the in-only message handling
  6. Improvements to Guthtila for better performance
  7. Improvements to TCPMon tool
  8. Memory leak fixes
  9. Many bug fixes

Archived News

Refer to information on the previous releases.