<html>
<head>
  <meta http-equiv="content-type" content="">
  <title>Apache Axis2 Release Notes</title>
</head>

<body>
<h1>Axis2 Release Notes</h1>

<h3>May 4th, 2006</h3>

<p>After nearly two years of development, we are very proud to announce the
release of Apache Axis2 1.0!</p>

<p><a href="http://ws.apache.org/axis2">http://ws.apache.org/axis2</a></p>

<p>Apache Axis2 is a complete re-design and re-write of the widely used 
Apache Axis SOAP stack to build on the lessons learnt from Apache Axis.</p>


<p>Apache Axis2 is more efficient, more modular and more XML-oriented than 
the older version. It is carefully designed to support the easy addition of
 plug-in "modules" that extend its functionality for features such as security and reliability.</p> 

<p>A module supporting WS-Security (Apache Rampart) is
available immediately and a module supporting WS-Reliable Messaging (Apache
Sandesha) will be available within days.</p>

<p>Apache Axis2 not only supports SOAP 1.1 and SOAP 1.2, but it also has
integrated support for the widely popular REST style of Web services: the
same business logic implementation can offer both a WS-* style interface as
well as a REST style interface simultaneously.</p>

<p>Apache Axis2 is built on Apache Axiom, a new high performant, pull-based
XML object model that was released two days ago.</p>

<h2>Features</h2>

<h3>Programming Model</h3>
<ul>
  <li>Improved, XML-centric client API including full WSDL and policy
  support</li>
  <li>Support for any message exchange pattern</li>
  <li>Synchronous and asynchronous calls</li>
  <li>Archived service deployment model supporting full service encapsulation
    with versioning support</li>
  <li>Archived module deployment model supporting controlled extensibility
    with versioning support</li>
  <li>Hot deployment</li>
  <li>WS-Policy driven code generation extensions</li>
  <li>Flexible service lifecyle model</li>
  <li>Support for querying service's WSDL (using ?wsdl), schema (using ?xsd)
    and policies (using ?policy)</li>
</ul>

<h3>Supported Specifications</h3>
<ul>
  <li>SOAP 1.1 and 1.2</li>
  <li>Message Transmission Optimization Mechanism (MTOM), XML Optimized
    Packaging (XOP) and SOAP with Attachments</li>
  <li>WSDL 1.1, including both SOAP and HTTP bindings</li>
  <li>WS-Addressing (submission and final)</li>
  <li>WS-Policy</li>
  <li>SAAJ 1.1</li>
</ul>

<h3>Transports</h3>
<ul>
  <li>HTTP</li>
  <li>SMTP</li>
  <li>JMS</li>
  <li>TCP</li>
</ul>

<h3>Supported Data Bindings</h3>
<ul>
  <li>Axis Data Binding (ADB)</li>
  <li>XMLBeans</li>
  <li>JibX</li>
  <li>JaxMe</li>
</ul>

<h3>Tools</h3>
<ul>
  <li>WSDL2Java: Generate Java stubs and skeletons from a WSDL document.</li>
  <li>Java2WSDL: Generate a WSDL document from a Java class.</li>
  <li>Eclipse Plugins</li>
  <li>Intellij Idea Plugins</li>
  <li>Web application for administering Apache Axis2</li>
</ul>

<h3>Extension Modules</h3>
<ul>
  <li>Apache Rampart: Supporting WS-Security (and soon WS-Policy)</li>
  <li>Apache Sandesha2: Supporting WS-Reliable Messaging</li>
</ul>
(Apache Axis2 comes built in with a module that supports WS-Addressing.)

<h2>Known Issues and Limitations</h2>
<ul>
  <li>Recursive schemas (A includes B which includes A) may cause
  problems</li>
  <li>JaxMe data binding support is experimental</li>
  <li>Axis2-595: Hot redeployment in Apache Tomcat has problems</li>
  <li>Axis2-666: AddressingSubmissionInHandler does not deserialize EPR
    extensibility attributes and elements</li>
  <li>AXIS2-667: Operation dispatch based on message body has a known
  issue</li>
  <li>Axis Data Binding (ADB) does not cover all of XML Schema; its an 80-20
    design point. Unsupported XML Schema features include: 
    <ol>
      <li>Simple content extension and restriction</li>
      <li>Complex content restriction</li>
      
    </ol>
    
  </li>
  <li>ADB does not support xsi:type based deserialization at runtime</li>
  <li>No support yet for unwrapping of doc/lit WSDL files (in stub
  generation)</li>
  <li>No support yet for rpc/encoded style WSDL documents (in stub
  generation)</li>
</ul>

<p>Thank you for your interest in Axis2.</p>
<strong><em>-The Axis2 Development Team</em></strong></body>
</html>
