Mauro Molinari ha scritto:
Please note that all my trials and researches were carried out on .NET 1.1 and .NET 2.0 interoperability. I don't have details on the behaviours of 3.x .NET client generation tools. Maybe in the later versions all the issues have been solved (so that minOccurs=0 could actually be used with no harm), but there are many .NET 1.1/2.0 users still out there.

Well, I should be more clear here. As I wrote in the issue:
https://issues.apache.org/jira/browse/AXIS2-3300
using nillable=true is actually the safest way to go if we talk about .NET >= 2.0. In .NET 1.x, the client generation tools simply ignore nillable=true attribute, so minOccurs=0 would be in some way better (if we talk about operation input parameters, although the doubled-parameters issue) or worse (if we talk about output parameters, i.e.: the void return type problem).

In the JIRA issue I explained what would be the best solution in my opinion, but Amila does not like the idea to have a "compatibility" flag just for .NET 1.x, so as a compromise he proposed the use of nillable=true at least to avoid the void return type bug and the doubled-parameter aesthetic issue.

In this sense, the nillable=true seems to be the least problematic solution, given that .NET 1.x support would still be excluded.

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

Reply via email to