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 bu...@apache.org on 2004/03/12 17:25:24 UTC

DO NOT REPLY [Bug 26189] - Incorrect mapping of local elements with minOccurs="0" maxOccurs="1"

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=26189>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=26189

Incorrect mapping of local elements with minOccurs="0" maxOccurs="1"





------- Additional Comments From Andrei.Iltchenko@nl.compuware.com  2004-03-12 16:25 -------
Just checked against today's CVS code and witnessed the same behaviour as 
Davanum.

This behaviour is actually a regression over 1.1, since 1.1 at least generated 
code that compiled (even though it used primitives where it should have used 
wrappers). Now I get the following compilation errors when I try to compile 
code generated from the wsdl document attached:

AddressFetcher2\ExampleSoapStub.java:120: incompatible types
found   : java.lang.Long
required: long
                out2.value = (java.lang.Long) _output.get(new javax.xml.namespac
e.QName("urn:AddressFetcher2", "out"));
                             ^
AddressFetcher2\ExampleSoapStub.java:122: incompatible types
found   : java.lang.Long
required: long
                out2.value = (java.lang.Long) org.apache.axis.utils.JavaUtils.co
nvert(_output.get(new javax.xml.namespace.QName("urn:AddressFetcher2", "out")),
java.lang.Long.class);

It appears that the person who was changing WSDL2Java's logic related to 
primitives and wrappers forgot to change the  
org.apache.axis.wsdl.toJava.Utils.holder method. I am sure this is not the only 
deterioration introduced...