axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Frank Cornelis (JIRA)" <>
Subject [jira] Commented: (AXIS2-655) Generated Skeleton difficult to use
Date Wed, 03 May 2006 08:25:51 GMT
    [ ] 

Frank Cornelis commented on AXIS2-655:

I've tested the new interface approach and it works just as expected. If you revert back to
the situation where the skeleton does not implement from the interface, could you please keep
the generated interface? That way I can extend the skeleton (that does not implements the
interface) and also implement the interface in my 'Impl' class... Please consider this alternative
approach... dropping the interface again is just bad... keep it... OK if you don't want to
make the skeleton implement the interface per default.... but please don't drop it.... it's
too important in production builds.... where you want to detect wrongly implemented 'Impl's
at compile time.... runtime it just too late...


> Generated Skeleton difficult to use
> -----------------------------------
>          Key: AXIS2-655
>          URL:
>      Project: Apache Axis 2.0 (Axis2)
>         Type: Improvement

>     Reporter: Frank Cornelis

> When generating code starting from a WSDL you end up with a Skeleton. The idea is to
use this 'xxxSkeleton' to create your own 'xxxImpl', hence the name skeleton I guess...
> But, the problem with this is that this generated skeleton class is hardcoded in a cast
in in the generated xxxMessageReceiverInOut. So copying the skeleton to your own Impl and
letting services.xml point to this new Impl 'ServiceClass' simply won't work. It really has
to be 'xxxSkeleton'. So why make it configurable in services.xml if it's hardcoded anyway?
I also don't thing I should manually change 'xxxMessageReceiverInOut' for each new 'Impl'
class I want to try out. Also, each time I run my codegen, the skeleton is overwritten...
is simply doesn't work this skeleton thing... it's pointless...
> Also, it would be much better if you would have a nicely generated interface to implement,
instead of that skeleton thingy. The generated skeleton should implement this interface. The
'xxxMessageReceiverInOut' should cast to the interface type instead of cast to the 'skeleton'.
That way you can point to whatever 'xxxImpl' you want to, as long as you implement the correct
interface. Another benefit of using this interface approach is that a change in the WSDL is
directly reflected in a change of the interface you have to implement. Thus you detect required
changes in the 'Impl' during compilation instead of runtime.
> The above issues are really critical for Axis2 to be fully usable in a production environment.
If JAX-WS can do it, Axis2 should too.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message