axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Srinath Perera <>
Subject Re: [Axis2] Some review notes from me
Date Thu, 10 Mar 2005 11:07:21 GMT
On Wed, 9 Mar 2005 22:09:27 +0530, Venkat Reddy <> wrote:
> Hello folks :-)
> First off, apologies for being a long-time lurker without much active
> participation in Axis2 due to some other priorities. Indeed, you folks
> made tremondous progress in seeding and shaping out the next
> generation SOAP processor.
> Now, that one more round of discussions are round the corner, I just
> gone through the code and made a list of notes or observations, which
> could be  purely a result of my limited knowledge of the code and
> please consider these as my humble attemt at ramping up with the
> things. If you guys feel any of these notes are useful, i'm willing to
> submit any needed changes.
> Client-side
> ---------------
> 1. ExecutionChain.invoke() might need to skip the current phase while
> calling phase.revoke(), because revoking the handlers in the current
> phase is already taken care of, inside the Phase.invoke().
> 2. Similarily, the handler.invoke() may have the code to revert the
> actions in a catch block, thus making the handler.revoke() unnecessary
> for the *current* handler.
1 and 2 yap , Thanks and Fixed :)

> 3. o.a.axis.engine.Dispatch: This is seemingly being used as handler
> for receiving the message instead of what its name suggests. The
> AxisEngine.receive method creates a dispatcher phase with the name
> "DispatchPhase". I think this should be named as "ReceivingPhase". the
>  Phase class also has two phases named as "DispatchPhase" and
> "SendPhase", which tend to mean the same but actually being used as
> symmetrically opposite phases.
Dispatcher dispatch the Service , it just locate the service and do nothing else

> 4. o.a.axis.engine.receive() does not add service-specific phases to
> the chain, unlike what  executeOutFlow() does.
actually it does ..indirectly .... but till you come to the diaptacher
phase the services specific handlers are not known .. so Diaptacher
does it

> 5. o.a.axis.engine.receive() doesn't appear to the opposite of
> executeOutFlow() both in terms of the name and in its input
> parameters. May be we can have consistent naming and signature,
> becuase they seem to do the same stuff, but in opposite order.
send(MC) should be compared with the recive(MC), execute out flow is
seperated as asame method can be use to send the faults as well. May
be we can use send(MC) to send the errors as well .. let me check

> 6. The instance variable registry in AxisEngine classs seems unused,
> though we can't construct the engine object without passing registry.
> Mostly we are using the registry contained in MsgCtx for message
> processing.
My mistake, will fix it

> 7. Looks like our SOAP* classes are not implementations for
> javax.xml.soap.* but something specific to Axis OM. May be its better
> to move closer to SSAZ as early as possible.
think we discused this eariler .. the SAAJ is layrerd on top
> 8. We need to have TCK tesing also planned out and in-built into the
> milestone releases right from the beginning. I can take this up, with
> my experience with the TCK testing for 1.2.
sure and welcome .. u r refering to jaxpec tck right? we might need to
start tck module and jaxrpc module and start it right away ..

Thanks Venket for the great comments :), please let us know anyhting
you find if you happen to look at the code

View raw message