Andreas Veithen created AXIOM-447:
-------------------------------------

             Summary: [GSoC] New Axiom/Spring-WS integration
                 Key: AXIOM-447
                 URL: https://issues.apache.org/jira/browse/AXIOM-447
             Project: Axiom
          Issue Type: New Feature
            Reporter: Andreas Veithen


Background:

Spring Web Services can be configured to use either SAAJ or Axiom as object 
model. Generally, Axiom is preferred over SAAJ because in most cases it removes 
the need to create complete in-memory representations of the incoming and 
outgoing messages. However, since the time the Axiom support in Spring WS was 
originally implemented, there have been many improvements and optimizations in 
Axiom, and some APIs have been deprecated. The Axiom support in Spring WS 
doesn’t fully leverage all available optimizations and in some cases uses 
outdated APIs. It should also be noted that Spring WS only supports LLOM, but 
not DOOM. When WSS4J is used to implement WS-Security, this likely causes 
unnecessary overhead because messages need to be converted to/from DOM.

Goal:

The high level goal of the proposed GSoC project is to implement a completely 
new Axiom support for Spring WS that leverages the full potential of Axiom. The 
new implementation is not expected to be backwards compatible with the existing 
Axiom support, but should support all important features of the existing Axiom 
support (such as MTOM and SwA). The new implementation must support DOOM and be 
interoperable with WSS4J. It should be tuned in order to make the 
Spring-WS/Axiom/WSS4J combination competitive with respect to CXF and Metro in 
terms of performance for the scenarios described in the series of articles 
written by Dennis Sosnoski:

http://www.ibm.com/developerworks/library/j-jws14/index.html

This implies that in addition to the Axiom/Spring-WS integration, the candidate 
for this GSoC project may be required to work on the following areas as well:
* OMSourcedElement support for DOOM: the OMSourcedElement API is used by Spring 
WS, but is currently only supported by LLOM
* Performance tuning of the DOOM implementation: it is likely that WS-Security 
performance testing will identify some areas for improvement in DOOM
* API enhancements: it is possible that the development of the new Axiom 
support for Spring WS will require some enhancements of the current Axiom API 
(e.g. to support additional optimizations)

Deliverables:

The candidate is expected to provide the following deliverables during the 
project:
* The code for the new Axiom support, including reasonably complete Javadoc for 
all public APIs.
* A test suite that provides a high level of code coverage (at least comparable 
to the code coverage of those parts of Axiom that are currently under active 
development)
* User documentation, including a quick start guide explaining how to migrate 
from the existing Axiom support to the new implementation.
* A report comparing the performance of the new Axiom support with other SOAP 
stacks for the scenarios described in the articles written by Dennis Sosnoski.

Misc:

* In its present form, the project proposes to create a new Axiom/Spring-WS 
integration that would be maintained by the Axiom project, while the existing 
implementation is maintained by the Spring WS project. Before confirming the 
project, the candidate is expected to engage with the Spring WS developer 
community to get their opinion on this proposal and to check if they are 
willing to provide assistance for this project. Depending on their feedback, 
the proposal may be modified.
* The candidate is expected to develop the new Axiom support from scratch 
without starting from the existing code in Spring WS. This requirement is in 
line with the goal of fully utilizing the features and optimizations in the 
current Axiom version. In addition, it avoids making the new Axiom support a 
derivative work (in the sense defined by the ASL) of the existing 
implementation.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to