Geeks With Blogs

News





INauseous() Shawn Cicoria - Solution Architect, Craftsman and Artisan - INauseous() - Main Blog Here: www.Cicoria.com

Here's a post from someone struggling with a couple of Java based WS stacks that incompletely handle inheritence...

Link to Webbert's Space

Basically, we have support for inheritance in Xml schemas; .NET (both Asmx & WCF - didn't look at WSE) handles the model just fine, but when trying to provide the interface, through the published WSDL, to a Java stack (Axis & XFire) it falls down on the Java side.

From someone in regards to the frustration with the Java support:

I am literally at the end of my rope with no place to go than to rewrite my service
( 50k+ line of code ) just accommodate the wonderful open source community for something
so basic as inheritance.

To be clear, we're talking about something that's in Xml schemas and a concept that should be supported:

         <s:complexType name="Address" abstract="true"/>
         <s:complexType name="HomeAddress">
            <s:complexContent mixed="false">
               <s:extensionbase="s1:Address">
                  <s:sequence>
                     <s:element minOccurs="0" maxOccurs="1" name="HouseNumber" type="s:string"/>
                  </s:sequence>
               </s:extension>
            </s:complexContent>
         </s:complexType>
         <s:complexType name="WorkAddress">
            <s:complexContent mixed="false">
               <s:extension base="s1:HomeAddress">
                  <s:sequence>
                     <s:element minOccurs="0" maxOccurs="1" name="PhoneNumber" type="s:string"/>
                  </s:sequence>
               </s:extension>
            </s:complexContent>
         </s:complexType>

So, from the WSDL above, we should have no problem with clients recognizing the inheritence model. This is type definition hierarchy in Schemas.

A tremendous amount of resources (people, money,etc.) went into what Microsoft pushed out.  Plus, leadership in the SOAP arena are part of the team as well.  Well, it shows.  this stuff just works in .NET - no questions asked, no crap to deal with.

When I worked with Axis2, it was early adopter at best.  Documentation was zero, and I spent the time looking through the sourcecode to see what was going on.  It's hard to get the essence of a framework through just looking at the code, best see that in a sample or actual implementation that uses the code.  The Sun stuff in Netbeans looked more promising at the time.

The Axis and other stuff on the Java environment suffers from too many birds chasing after the same worm, but all they keep grabbing is just a small part.  So, they're struggling for resources, doing this on the part time model, and competing against alternative implementations for resources, mindshare, and ultimately to become the standard.  Theoretically, that should result in the best of the bunch becoming the winner, but if you've already got something to compete agains, I think it stinks to be in that postion.

Posted on Monday, March 26, 2007 2:59 PM | Back to top


Comments on this post: Java & .NET Web Service Interop Fun.

Comments are closed.
Comments have been closed on this topic.
Copyright © Shawn Cicoria | Powered by: GeeksWithBlogs.net