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

20th April 2009 - Apache Axis2/C Version 1.6.0 Released

Download 1.6.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
    • CGI interface
  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. XPath support for Axiom XML Object model
  8. AXIOM, an XML object model optimized for SOAP 1.1/1.2 messages; This has complete XML infoset support
  9. XML parser abstraction
    • Libxml2 wrapper
    • Guththila pull parser support
  10. Both directory based and archive based deployment models for deploying services and modules
  11. Description hierarchy providing access to static data of Axis2/C runtime (configuration, service groups, services, operations and messages)
  12. Context hierarchy providing access to dynamic Axis2/C runtime information(corresponding contexts to map to each level of description hierarchy)
  13. Message receiver abstraction
    • Inbuilt raw XML message receiver
  14. Code generation tool for stub and skeleton generation for a given WSDL (based on Java tool)
    • Axis Data Binding (ADB) support
  15. Transport proxy support
  16. REST support (more POX like) using both HTTP POST and GET
  17. Comprehensive documentation
    • Axis2/C Manual
  18. WS-Policy implementation called Neethi/C, with WS-SecurityPolicy extension
  19. TCP Transport, for both client and server side

Changes Since Last Release

  1. XPath support for Axiom XML object model
  2. CGI support
  3. Improvements to MTOM to send, receive very large attachments
  4. Improvements to AMQP transport
  5. Improvements to WSDL2C codegen tool
  6. Many bug fixes.
  7. Memory leak fixes

Archived News

Refer to information on the previous releases.