Axis 2.0 Summit On August 21-24 @ Sri Lanka
Notes from the meeting: http://wiki.apache.org/ws/FrontPage/Axis2
INVITATION
Axis 1.2 is almost out the door, and a variety of discussions have been simmering for the past year or more about how to improve the package, restructuring, etc. As such, it's about time to get some people together and talk about it in detail.
Sanjiva Weerawarana has managed to get some funding to have the LSF guys do a lot of work on Axis over the next year, so they would like to host a meeting in a few weeks in Sri Lanka in order to meet face-to-face and discuss the design and architecture and logistics for Axis 2.0. (my best guess right now, incidentally, is that we'll put out a 1.3 this year, during which we'll fix bugs and deprecate whatever APIs we think will be undergoing serious revision for 2.0, and then try to release 2.0 within about 12 months)
Some stuff we'll likely cover:
(Please feel free to add any topic you feel axis 2.0 should have or should be changed in)
Support async messaging and simplify building services that interacts as peers
http://nagoya.apache.org/jira/browse/AXIS-1500
Extension architecture including WSDL reading/writing plugins, and a jar model for encapsulating stuff like WS-* in extension "modules"
can we put a one build to all ws-* proj which make sure all are in sync. (prob - the ws-* projects depends on specific axis versions, not snap shots.) --Srinath
Performance issues, encoding redesign
pull parser based encoding with a generated code using the information in the WSDL. This is demonstrated by axismora (inside ws-axis/contrib) --Srinath
http://issues.apache.org/jira/browse/AXIS-1497
XML/Java data binding (JaxME/JAXB/XMLBeans)
if we generate code for the data binding can we give the responsibility of the XML <->java to JAXB/xml beans. ( pull parser based JAXB implementation ??)
http://nagoya.apache.org/jira/browse/AXIS-1498
WSDL processing ground-up rebuild
separate the WSDL parsing and code generation so the things like (like what? --Glen)
right now the WSDL parsing and the code generation is bind together tightly. When the DOM parsing is tried to replace with JAXME XS parser the things are far from simple and the code generation code need to change as well. Even though the WSDL4j standardized WSDL stuff the Schema types are not behind any interface. Some information e.g. maxOccurs are hidden inside the logic. Plus may be we can separate WSDL2 so anybody can use it as a WSDL parser if they wish to. --Srinath
add the support for the jaxrpcmapping.xml file (JSR 109) to the WSDL2Java see the comments added at http://nagoya.apache.org/jira/browse/AXIS-1501 --Srinath
The build/test process, how can it be improved/streamlined
http://nagoya.apache.org/jira/browse/AXIS-1499
Use Cases
- Simplify creating doc/literla services
http://nagoya.apache.org/jira/browse/AXIS-1496
Base Specifications
1.WSDL 1.1 and WSDL 2.0
2.SOAP 1.2
3.JAX-RPC 1.1 and JAX-RPC 2.0
4.WS-I profile
Supporting Specification
1.WS-Addressing (Are we integrating the Addressing to the Axis core)
2.WS-Policy (Are we integrating the Policy to the Axis core)
3.How to support implementing the WS-Security and other related specification, WS-AT and WS-RM in Axis
4.JAXB 2.0 related to use the JAXB to do the Axis encoding/decoding and type mapping rules
5.JSR 109 related to the jaxrpcmapping.xml file.
6.Etc (Please correct or extend this list)
Misc
- Can the Axis SOAP message execution be paused (WS-RM requirements) without going up to the pivot.
{{{ e.g. If this is possible then we can deploy two handlers for Security and the Reliability, where they can
- easily drop the messages if they have failed the security tests or reliability tests, without going up to the pivot. }}}
- The One way message implementation (Asynchronous support for web services)
- Can we integrate WS-Addressing with axis?
- Consider dropping support for rpc/enc? (-1! There are still a lot of rpc/enc services out there --Glen)(how about implementing axis based on the doc/lit and implement rpc/enc on top of doc/lit --Srinath)
How will Axis 2.0 align with JAX-RPC 2.0 & JAXB 2.0? Gap analysis appreciated if the intention is not a fully spec compliant impl.
If you're a committer or other party with good knowledge of the Axis source, please consider yourself invited. Sanjiva can help out with local accommodations and travel suggestions. If you are interested, please let us know!
For those that can't make it, we can set up an IRC channel and take minutes.
Agenda for the Summit:
Daily Schedule:
{{{ - start @ 9am
- - break @ 10:30, resume @ 10:45 - lunch @ 12:30, resume @ 1:30 - break @ 3:30, resume @ 3:45 - finish @ 5:00-5:30 }}}
Saturday:
{{{ - welcome and meet-and-greet? (1hr)
- - develop common vision of / objectives for Axis2
- - Axis history - Where have we succeeded, what's still missing? - Objectives for this meeting?
- - "code poems"? - requirements - planning - architecture doc framework
- - what belongs into core and what's add-on - how to properly componentize the core for maximal adoption
- - Axis history - Where have we succeeded, what's still missing? - Objectives for this meeting?
Sunday:
{{{ Message Processing
- - DOM/JDOM/SAX/StAX/etc - Data binding
- - Relationship to JAXB/JaxMe
- - Which uses do we optimize for?
- - "Phased" chains - Relationship to JAX-RPC
Monday:
{{{ WSDL Processing
- - Redesign of WSDL2* - Support of WSDL 2.0 - ["WSDL24J"]?? - Support of WSDL 1.1 .. can we abstract the two properly?
- Move core out of Axis/Java into Axis/<lang independent> - Tooling plug-ins for Eclipse and Netbeans? - Handling extensions
- - How much control can registered extensions get? - What models do we make available to extension code? }}}
Tuesday:
{{{ - decide package names / CVS/SVN plans
- - discuss logistics of global development
- - decision making - how to make the wiki more useful - how to best use email
- - start new dev list for 2.0?
- - timing?
- - decision making - how to make the wiki more useful - how to best use email
Required background material:
{{{ - SOAP 1.1, 1.2
- - MTOM, XOP - WSDL 1.1, 2.0 - WS-Addressing - WS-Policy*
- JWSDL & ["WSDL4J"] - JAX-RPC 1.1 and 2.0 (if avail) - JAXB, JaxMe, XML Schema 1.0 - JMS / ["J2EE"] (at least a bit) - WS-Security,SecureConv (a bit)
- Optional: WS-ReliableMessaging, WS-AT, WS-Eventing }}}