axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sanjiva Weerawarana (JIRA)" <>
Subject [jira] Commented: (AXIS2-655) Generated Skeleton difficult to use
Date Wed, 03 May 2006 13:58:46 GMT
    [ ] 

Sanjiva Weerawarana commented on AXIS2-655:

OK I won't -1 this but I'm VERY uncomfortable with this solution. Let's hope nothing gets
screwed up .. 

Also, going back to a comment made by Frank a bit above, I don't see how gen'ing the interface
gives you compile time validation of the correct impl class being given. If you use services.xml
and point to a random foo class, that won't be detected until the cast occurs in the message
receiver- which is at runtime. Am I missing something??

> 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