You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Charles Galpin (JIRA)" <ji...@apache.org> on 2009/11/02 21:12:59 UTC
[jira] Commented: (AXIS2-3300) minOccurs="0" always generated by
Java2WSDL - problems with .NET client generation
[ https://issues.apache.org/jira/browse/AXIS2-3300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12772637#action_12772637 ]
Charles Galpin commented on AXIS2-3300:
---------------------------------------
Well it turns out there is a bug when serving the static copy of my WSDL so I have no work around for this bug.
Can you give us an idea of when this might be included Deepal?
thanks,
charles
> minOccurs="0" always generated by Java2WSDL - problems with .NET client generation
> ----------------------------------------------------------------------------------
>
> Key: AXIS2-3300
> URL: https://issues.apache.org/jira/browse/AXIS2-3300
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: Tools
> Affects Versions: 1.3
> Reporter: Mauro Molinari
> Assignee: Deepal Jayasinghe
> Attachments: axis2-1.4.1.diff
>
>
> When you try to expose a POJO as a webservice, suppose you have two Java methods with the following signatures:
> public Integer a(String, Integer)
> public String b(Integer, String)
> Java2WSDL adds the minOccurs="0" for each element of each complex type, both for the input parameters and for the output parameters.
> When generating clients using .NET WebService Studio 2.0, the result is the following:
> - all the generated C# methods input parameters are doubled, except for the string ones: the doubled parameters are booleans whose meaning is: "is the previous parameter specified or not?"
> - all the generated C# methods return parameters are void, except for the string ones
> The actual result are clients with methods like these:
> public void a(string, int, bool);
> public string b(int, bool, string);
> This is obviously a problem, particularly for the "void" return type.
> If I remove minOccurs="0", clients are generated correctly by .NET WebService Studio 2.0.
> The issue is this: why does Java2WSDL always adds minOccurs="0"? If its meaning were "it can be null", I think nillable="true" attribute should be more appropriate... Moreover, if I substitute Integer with int in the original Java class methods, minOccurs="0" is still added by Java2WSDL, even if an int cannot be null.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Re: [jira] Commented: (AXIS2-3300) minOccurs="0" always generated by Java2WSDL - problems with .NET client generation
Posted by WJ Krpelan <kr...@yahoo.com>.
Hi,
well, dont expect anything but "WSDL-first" to work reliably in interoperability scenarious - ever!
i dont think adopting java2wsdl to some micro* style would be a good idea, because it would break interoperability elsewhere!
Cheers, Wolfgang
--- On Mon, 11/2/09, Charles Galpin (JIRA) <ji...@apache.org> wrote:
> From: Charles Galpin (JIRA) <ji...@apache.org>
> Subject: [jira] Commented: (AXIS2-3300) minOccurs="0" always generated by Java2WSDL - problems with .NET client generation
> To: axis-dev@ws.apache.org
> Date: Monday, November 2, 2009, 9:12 PM
>
> [ https://issues.apache.org/jira/browse/AXIS2-3300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12772637#action_12772637
> ]
>
> Charles Galpin commented on AXIS2-3300:
> ---------------------------------------
>
> Well it turns out there is a bug when serving the static
> copy of my WSDL so I have no work around for this bug.
>
> Can you give us an idea of when this might be included
> Deepal?
>
> thanks,
> charles
>
> > minOccurs="0" always generated by Java2WSDL - problems
> with .NET client generation
> >
> ----------------------------------------------------------------------------------
> >
> >
> Key: AXIS2-3300
> >
> URL: https://issues.apache.org/jira/browse/AXIS2-3300
> >
> Project: Axis 2.0 (Axis2)
> > Issue Type: Bug
> > Components: Tools
> > Affects Versions: 1.3
> > Reporter:
> Mauro Molinari
> > Assignee:
> Deepal Jayasinghe
> > Attachments:
> axis2-1.4.1.diff
> >
> >
> > When you try to expose a POJO as a webservice, suppose
> you have two Java methods with the following signatures:
> > public Integer a(String, Integer)
> > public String b(Integer, String)
> > Java2WSDL adds the minOccurs="0" for each element of
> each complex type, both for the input parameters and for the
> output parameters.
> > When generating clients using .NET WebService Studio
> 2.0, the result is the following:
> > - all the generated C# methods input parameters are
> doubled, except for the string ones: the doubled parameters
> are booleans whose meaning is: "is the previous parameter
> specified or not?"
> > - all the generated C# methods return parameters are
> void, except for the string ones
> > The actual result are clients with methods like
> these:
> > public void a(string, int, bool);
> > public string b(int, bool, string);
> > This is obviously a problem, particularly for the
> "void" return type.
> > If I remove minOccurs="0", clients are generated
> correctly by .NET WebService Studio 2.0.
> > The issue is this: why does Java2WSDL always adds
> minOccurs="0"? If its meaning were "it can be null", I think
> nillable="true" attribute should be more appropriate...
> Moreover, if I substitute Integer with int in the original
> Java class methods, minOccurs="0" is still added by
> Java2WSDL, even if an int cannot be null.
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue
> online.
>
>