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