Add a parameter to wsdl2java to generate minOccurs="0" for nillable types.
--------------------------------------------------------------------------

         Key: AXIS-2208
         URL: http://issues.apache.org/jira/browse/AXIS-2208
     Project: Apache Axis
        Type: New Feature
  Components: WSDL processing  
 Reporter: Martin Grotzke
    Priority: Minor


hello,

is it possible to add a parameter to wsdl2java, that forces the generation of 
minOccurs="0" for nillable types?

the problem that this solves:
if you use a wrapper type like Integer in java, it get's translated to an 
xsd:int.
if you generate C# classes using .net 1.1, this will be translated to a C# int,
a primitive type that is not nullable (AFAIK nullable types are introduced in 
.net 2.0).

then, when sending a soap request from java to the .net webservice, and leave
a property of such a wrapper type null, an empty element is sent over the wire.
the .net deserializer tries to deserialize this element, but fails to create a
primitive value for this - on the java client side you receive a soap fault.

if you have the additional attribute minOccurs="0" in your schema, everything's
ok: when generating classes from the wsdl, for each element with minOccurs="0"
an additional property is generated like "FooDefined:boolean" (IIRC), that
can be used by the C#-developer to determine, if the primitive type is 
initialized.
when you invoke the webservice, no empty element will be transferred, so the
.net deserializer does not try to create a primitive value for this, but it 
initializes
the "FooDefined:Boolean" correctly.

to support interop with platforms like .net it would be great to have the 
possibility
to specify, if minOccurs="0" shall be generated in the schema for wsdl2java 
(including the ant task).

thanx in advance,
martin

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to