WJ Krpelan ha scritto:
Of course I understand your practical point exactly
and I would very much appreciate easier DOTNET-compatibility too- however:

interoperability can realistically only be achieved in areas where standards 
have been established already (in our real world)
For better or worse, there are no official WS-standards for expressing 
Null-Values of programming languages, DB-Nulls, and much more. (Nor will the 
two of us be able to establish it now, let alone enforce it - so again: outside 
of standards its up to the programmer methinks)

The central piece of a Web Service is, conceptually, a WSDL-definition 
(description of interface/contract)

I am sure a Web Service based on a WS-I conforming WSDL-definition can be called by DOTNET-Clients with no problem, same as by all other WS-I-conforming Clients. (Otherwise twould be a Microsoft-bug)
Ask Microsoft about it.
WS-I was after all co-founded by Microsoft.

So pls demonstrate where exactly an AXIS-generated WSDL is not conforming to 
these standards. This really would be an AXIS-bug to attend to then.

Some new pseudostandard JAVA2DOTNET (which versions of each anyway, what about 
future developments?) is looking like a dead horse to me.
Many of the webservices out there, and in fact, all public ones, have to be 
reachable by non DOTNET-clients. Maybe even yours - someday!

Hi Wolfgang,
personally I'm speaking after researching a lot about the whole WSDL 1.1/XML Schema 1.0/SOAP 1.1 and WS-I Basic Profile 1.1 and implementing some webservices in Java to be called from both Java and .NET 1.1 and .NET 2.0 clients. What I'm writing here and in that bug report are the results of my trials, errors and solutions.

The point is: there are two valid conventions that can be used in XML Schema to represent an optional operation parameter in a WSDL 1.1 service description. The first is by using minOccurs=0, the second is by using nillable=true. You may say neither of them are a perfect solution for expressing null-values of programming languages, however I don't see any particular reason for them not to be enough suited for most of the uses of "null". Given this, both of them are acceptable for the standards: what we are discussing here is when to use the former and when the latter to improve interoperability with .NET. I don't find any harm on this.

I know we're talking about .NET bugs, but .NET 1.1 and 2.0 are real world scenarios and they are used a lot: what should I reply to my customers when they ask me to give my WSDLs (generated from a Java application) and they can't generate their clients? "Upgrade your .NET version" (hoping it's fixed)? It would be great if this were so easy...

So, why can't Axis2 do it the smart way?

--
Mauro Molinari
Software Designer & Developer
E-mail: mauro.molin...@cardinis.com

Reply via email to