<html>
<head><title>:: Axis2 Release Notes ::</title></head>
<body>
<h1>Axis2 Release Notes</h1>

This is Axis2 0.94 release of the Apache Axis2.

<h3 id="head-215f3945a40558f9ad055ed5b6601e8f93706558">Axis2 Complete Features List</h3>
<ol type="1">
  <li> AXIOM, an XML object model working on StAX (Streaming API for XML) parsing optimized for SOAP 1.1/1.2 Messages. This has complete XML infoset support. </li>
  <li>Support for One-Way Messaging (In-Only) and Request Response Messaging (In-Out) </li>
  <li>Module Architecture, mechanism to extend the SOAP Processing Model </li>
  <li>Module version support , can have multiple versions of the same module and use them depending on the requirement. </li>
  <li>Content hierarchy </li>
  <li>Archive based deployment Model and Directory based deployment model </li>
  <li>JWS like deployment (making Java class into Web service) </li>
  <li>WSDL Code Generation Tool for Stub and skeletons </li>
  <li>WS-Addressing, both the submission (2004/08) and final (2005/08) versions </li>
  <li>WSS4J module for security </li>
  <li>Improved and user friendly Client API </li>
  <li>WSDL2Java</li>
  <li>REST (REpresentational State Transfer) Support </li>
  <li>Transports supports: HTTP, SMTP, TCP, JMS </li>
  <li>Raw XML providers </li>
  <li>Support for MTOM/ MIME/ SwA </li>
  <li>SAAJ implementation </li>
  <li>DOOM - New Feature </li>
  <li>Pack/Unpack capability for the generated code- New Feature </li>
  <li>Axis Data Binding - ADB (Framework and Schema Compiler) </li>
  <li>Numerous bug fixes since last release </li>
</ol>
<h3 id="head-5bb5aa099717d1d49642f7ae2d63ce5cf94487ad">Axis2 Experimental Features List</h3>
<ol type="1">
  <li> Sessions scoping for Application, SOAP, Transport and Request levels </li>
  <li>Server side Web Service Policy support </li>
  <li>?wsdl and ?xsd support </li>
  <li>Java2WSDL</li>
  <li>Generating ServiceClient for a given WSDL and invoke the corresponding service using generated client. </li>
</ol>
<h3 id="head-7dd8e783bb9e22fb00f88748855bb6e500111e12">Major Changes Since Last Release</h3>
<ol type="1">
  <li> Fixing of memory leaks </li>
  <li>Client API changes , Introducing ServiceClient instead of MEPClient, InOnlyMEPClient, InOutMEPClient, Call. (Please note that the above classes will be deprecated in this release.) </li>
  <li>Module versioning support , can have multiple versions of the same module and use them depending on the requirement. </li>
  <li>Code generator improved to process multi-port WSDL's properly </li>
  <li>Packing and unpacking options for the code generated classes </li>
</ol>
<h3 id="head-83371cc3d6961295be042f584c7b74d81cca23c4">Tools Included In This Release</h3>
<ol type="1">
  <li> Axis2 Web Application (Web App) </li>
  <li>WSDL2WS- Eclipse plugin/ Command line version/ IntelliJ IDEA plugin </li>
  <li>Service Archive Wizard- Eclipse plugin/ IntelliJ IDEA plugin</li>
</ol>
<h3 id="head-599c5a50552f02ebdeb5f58ef8da289234812ca4">What's Still To Do?</h3>
<p>See list of what we think needs to be done, and consider helping out if you're interested &amp; able! </p>
<ol type="1">
  <li> JAX-RPC 1.1 and/or JAX-WS compliance </li>
  <li>SOAP Encoding </li>
  <li>Binary serialization and de-serialization support </li>
  <li>Management Interface for Axis2 </li>
  <li>Implementation of other Transports. </li>
  <li>Resource framework implementation (WS-RF) and Enterprise web services such as JSR 109 support </li>
  <li>Completion of interop tests </li>
</ol>
<p>Axis2 is taking shape, this 0.94 release is a glimpse of 1.0 that should be coming soon. 
If you happen to have vision of how the next generation of the Web Service should be, and like to contribute to 
Apache Axis2 please help us to shape the Apache Axis2. Any contribution in the form of coding, testing, submitting 
improvements to the documentation, and reporting bugs are always welcome.</p>
<p>Thanks for your interest in Axis2!</p>
-- The Axis Development Team
</body>
</html>

 
