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 "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org> on 2005/03/04 17:03:46 UTC

[jira] Created: (AXIS-1838) Array deserialization

Array deserialization
---------------------

         Key: AXIS-1838
         URL: http://issues.apache.org/jira/browse/AXIS-1838
     Project: Axis
        Type: Bug
  Components: Serialization/Deserialization  
    Versions: 1.2RC3    
 Environment: JOnAS 4.3.3
    Reporter: Guillaume Sauthier


When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!

The problem only occurs when using Array with Helper :

ArrayofBook
-> Book[] arrayOfBook
+
ArrayOfBook_Helper

I'll attach a patch for test.holders that reproduce this problem.
failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Assigned: (AXIS-1838) Array deserialization

Posted by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=history ]

Davanum Srinivas reassigned AXIS-1838:
--------------------------------------

    Assign To: Glen Daniels

Glen,

Can we please fix this before 1.2 Final?

thanks,
dims

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>  Attachments: axis-array-deser-error-patch.txt
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Glen Daniels (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_62690 ]
     
Glen Daniels commented on AXIS-1838:
------------------------------------

Guillaume:

Could you try this again with the current CVS and see if the unwrapped-array stuff helps?  Please also attach that little test case you had in Sri Lanka?  Thanks!

--Glen


> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, axis-array-patch-update.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_60890 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

Maybe something :

It seems that we're not using maxOccurs attributes in serilalization process; if we have a maxOccurs="unbounded" for a given Type, I think it should be serialized as an Array.
That's not the case now.

Is this a wanted behavior ?

I have made changes in my sandbox, seems to resolve this Array problem (at least partially; last some errors with xsd:base64Binary "array"). TCK tests are running. I will let you know if I found something else.

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>  Attachments: axis-array-deser-error-patch.txt
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_61192 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

I have this kind of problems with interop tests (base64Binary -> byte[])
BeanPropertyTarget has been tell to put a value inside an array, but the value is the array itself.

BTW The error message isn't very clear :)

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_62810 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

Question for Glen :

Why some methods have been added in ElementDesc and ElementDecl for maxOccurs=unbounded case ? They are never used !

Even when we generate Helper classes (the code that write the ElementDesc(s) for TypeDesc), we don't generate this kind of code :
if (elementDecl.getMaxOccursIsUnbounded()) {
 out.println("desc.setMaxOccursUnbounded(true);")
}

But in ArrayDeserializer, we look inside the ElmementDesc to see if the maxOccurs is unbounded. So because the setter is never called, ElementDesc.isMaxOccursUnbounded() will always return false.

BTW, we still have problems in J2EE TCK :
* Caused by: org.xml.sax.SAXException: Found character data inside an array element while deserializing
    at org.apache.axis.encoding.ser.ArrayDeserializer.characters(ArrayDeserializer.java:489)
    at org.apache.axis.encoding.DeserializationContext.characters(DeserializationContext.java:966)
    at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:177)
    at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
    at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
    at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
    at org.apache.axis.client.Call.invoke(Call.java:2436)

* some xml type swapping (soapenc<->xsd) with interop testing

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, axis-array-patch-update.txt, diff.patch, echo2.zip
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Resolved: (AXIS-1838) Array deserialization

Posted by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=all ]
     
Davanum Srinivas resolved AXIS-1838:
------------------------------------

    Resolution: Fixed

Checked in a fix and test case.

thanks,
dims

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, axis-array-patch-update.txt, diff.patch, echo2.zip
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_61156 ]
     
Davanum Srinivas commented on AXIS-1838:
----------------------------------------

Guillaume,

total of 3 failures in the test harness:

- testQNameList in test.wsdl.qnameser.QNameSerTestCase
- testHolderTest in test.wsdl.roundtrip.RoundtripTestServiceTestCase
- test11TerraServiceSoapGetPlaceList in test.wsdl.terra.TerraServiceTestCase

thanks,
dims

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_61207 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

Something interresting :
the TypeDesc inside test.wsdl.roundtrip.BondInvestment describe the ElementDesc "shortArray" :

        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("shortArray");
        elemField.setXmlName(new javax.xml.namespace.QName("", "shortArray"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "short"));
        elemField.setNillable(true);
        typeDesc.addFieldDesc(elemField);

The weird thing is that the xml type doesn't match the one in the WSDL :

        <element name="shortArray" nillable="true" type="impl:ArrayOf_xsd_short"/>

Any thoughts ?

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Updated: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=history ]

Guillaume Sauthier updated AXIS-1838:
-------------------------------------

    Attachment: axis-array-deser-error-patch.txt

break the test suite.

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>  Attachments: axis-array-deser-error-patch.txt
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_61206 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

Solved for QnameDeser + TerraService

I've added SimpleListDeser in the list of deserializers that shouldn't use indexed/array properties setter (in BeanDeserializer).

Problem is still here for Roundtrip#holderTest :
It tries to set a null value inside a short[].

Request message contains the following :
<shortArray xsi:type="xsd:short" xsi:nil="true"/>

But accordingly to the generated wsdl we should have an "{http://roundtrip.wsdl.test}ArrayOf_xsd_short"
<element name="shortArray" nillable="true" type="impl:ArrayOf_xsd_short"/>

I'll take a look at the change I've made in BeanSerializer too :)

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_60501 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

Seems linked to Bug AXIS-1547

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>  Attachments: axis-array-deser-error-patch.txt
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Updated: (AXIS-1838) Array deserialization

Posted by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=history ]

Davanum Srinivas updated AXIS-1838:
-----------------------------------

    Priority: Blocker  (was: Major)

Changing the priority to blocker.

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_61211 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

After a look at JavaBeanHelperWriter, I've found this :

                    if ((elemType.getDimensions().length() > 1)
                            && (elemType.getClass() == DefinedType.class)) {

                        // If we have a DefinedType with dimensions, it must
                        // be a SOAP array derived type.  In this case, use
                        // the refType's QName for the metadata.
                        xmlType = elemType.getRefType().getQName();
                    } else {

                        // Otherwise, use the type at the end of the ref
                        // chain.
                        while (elemType.getRefType() != null) {
                            elemType = elemType.getRefType();
                        }

                        xmlType = elemType.getQName();
                    }

Seems that using in the Helper the component type of the Array is a wanted behavior.

I persists to think that the serialized element should send an xsi:type="impl:ArrayOf_xsd_short" instead of short.
The BeanDeserializer retrieve the child xsi:type (xsd:short here), then, it ask the Context for a Deserializer.
The Context is called with (QName xsd:short, Class short[]) and returns a SimpleDeserializer.
At this point, we should have an ArrayDeserializer, isn't it ?

I've tried to force the child xml type (to {http://test.wsdl.roundtrip}ArrayOf_xsd_short) and the test case has passed.

Any ideas ?



> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


RE: [jira] Commented: (AXIS-1838) Array deserialization

Posted by Glen Daniels <gl...@thoughtcraft.com>.
Hi Guillaume:

So the first weird thing I notice about your test is that you're combining literal arrays and SOAP arrays - do you need to be doing
that?  That's going to be somewhat challenging to account for because right now we trigger some stuff (SOAP array serialization)
based on RPC mode....

Second, you're using a createCall() syntax that isn't currently implemented (createCall(QName, QName)) in your test - I switched the
test case to just use the stub as usual for now.

I'm getting all the tests passing in test.wsdl.echo2 after the above change, but in looking at the XML I notice it's wrong (i.e.
SOAP array instead of maxOccurs="unbounded" array for echoArrayOfString_MaxOccursUnbounded()).  I'll see about fixing that.

I don't see a "BooleanArrayTest" in your test case, so I'm not sure what you're talking about there....

--G 

> -----Original Message-----
> From: Guillaume Sauthier (JIRA) [mailto:axis-dev@ws.apache.org] 
> Sent: Friday, April 15, 2005 4:59 AM
> To: axis-dev@ws.apache.org
> Subject: [jira] Commented: (AXIS-1838) Array deserialization
> 
>      [ 
> http://issues.apache.org/jira/browse/AXIS-1838?page=comments#a
> ction_62884 ]
>      
> Guillaume Sauthier commented on AXIS-1838:
> ------------------------------------------
> 
> Hmmm switching from --unwrapArrays to --wrapArrays cause many 
> problems!
> 
> If I use an Axis with Glen first commits (--unwrapArrays), I 
> still have array deser problem. But if I use latest Axis 
> (--wrapArrays), everything explode :
> I got "No serializer found for type BooleanArrayTest", when I 
> look into the Stub, I saw that my xml type QName is mapped to 
> a java array, when I need a Bean containing an array (I tried 
> to set the wrapArray to true, but that change nothing :'( )! 
> And Helper classes for array bean are not generated at all 
> (with the option set or not).
> 
> 
> 
> > Array deserialization
> > ---------------------
> >
> >          Key: AXIS-1838
> >          URL: http://issues.apache.org/jira/browse/AXIS-1838
> >      Project: Axis
> >         Type: Bug
> >   Components: Serialization/Deserialization
> >     Versions: 1.2RC3
> >  Environment: JOnAS 4.3.3
> >     Reporter: Guillaume Sauthier
> >     Assignee: Glen Daniels
> >     Priority: Blocker
> >  Attachments: axis-array-deser-error-patch.txt, 
> axis-array-patch-update.txt, axis-array-patch-update.txt, 
> diff.patch, echo2.zip
> >
> > When running TCK for JOnAS, sometimes, I fall on array 
> deserialization issue :
> > The SOAP Message contains 3 elements of the array, but the 
> constructed array only has the last element. So its size is 
> 1, instead of 3!
> > The problem only occurs when using Array with Helper :
> > ArrayofBook
> > -> Book[] arrayOfBook
> > +
> > ArrayOfBook_Helper
> > I'll attach a patch for test.holders that reproduce this problem.
> > failures will appear for testInOutBookArray
> 
> -- 
> 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
> -
> If you want more information on JIRA, or have a bug to report see:
>    http://www.atlassian.com/software/jira
> 
> 

[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_62884 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

Hmmm switching from --unwrapArrays to --wrapArrays cause many problems!

If I use an Axis with Glen first commits (--unwrapArrays), I still have array deser problem. But if I use latest Axis (--wrapArrays), everything explode :
I got "No serializer found for type BooleanArrayTest", when I look into the Stub, I saw that my xml type QName is mapped to a java array, when I need a Bean containing an array (I tried to set the wrapArray to true, but that change nothing :'( )! And Helper classes for array bean are not generated at all (with the option set or not).



> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, axis-array-patch-update.txt, diff.patch, echo2.zip
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Updated: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=history ]

Guillaume Sauthier updated AXIS-1838:
-------------------------------------

    Attachment: axis-array-patch-update.txt

Patch update (after jongjin commit)
I'll launch TCK test tonight to see regressions
Still problems in interop : in BeanDeserializer, when we receive a HRef for a binary type (xsd:base64Binary for example), we use a DeserializerImpl, and we doesn't know ref type. So when we create the BeanPropertyTarget, we try to fill an array instead of simply assigning the value. So I have "cannot convert type [B to field, base64binary[0] type byte" ...

Hmmm I have a question about this :
In BeanDeserializer (around #258), we only try to set the childXmlType value if there is no href. why ? If type is available from the fieldDesc, why do we prevent to use it ?

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, axis-array-patch-update.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Updated: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=history ]

Guillaume Sauthier updated AXIS-1838:
-------------------------------------

    Attachment: axis-array-patch-update.txt

Updated patch (added SimpleListDeserializer)

Sorry for the inconvenience but this patch has format changes inside (remove trailing spaces mainly) :'(

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Updated: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=history ]

Guillaume Sauthier updated AXIS-1838:
-------------------------------------

    Attachment: diff.patch

with this patch. Axis pass successfully J2EE jaxrpc tests.
I have not tried with standalone axis tck.

Some problems are remaining in interop

Note : this patch may be improved :) it's just a first try. Maybe others have better ideas to handle the issue.

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_60203 ]
     
Guillaume Sauthier commented on AXIS-1838:
------------------------------------------

Just notice that uncommenting the indexed methods will make the test green.

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>  Attachments: axis-array-deser-error-patch.txt
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Updated: (AXIS-1838) Array deserialization

Posted by "Guillaume Sauthier (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=history ]

Guillaume Sauthier updated AXIS-1838:
-------------------------------------

    Attachment: echo2.zip

test.wsdl.echo2 test case

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, axis-array-patch-update.txt, diff.patch, echo2.zip
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Glen Daniels (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_61389 ]
     
Glen Daniels commented on AXIS-1838:
------------------------------------

Guillaume:  I've got a little time to work on this in the next few days, and I'm a little confused as to how to repro the problem.  Do you have a small WSDL + testcase that you could check in?  I think I see what you're trying to do with the patch, but would really like to have a test case before I go too much deeper....

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, axis-array-patch-update.txt, axis-array-patch-update.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (AXIS-1838) Array deserialization

Posted by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-1838?page=comments#action_61137 ]
     
Davanum Srinivas commented on AXIS-1838:
----------------------------------------

test.wsdl.qnameser.QNameSerTestCase is failing

> Array deserialization
> ---------------------
>
>          Key: AXIS-1838
>          URL: http://issues.apache.org/jira/browse/AXIS-1838
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC3
>  Environment: JOnAS 4.3.3
>     Reporter: Guillaume Sauthier
>     Assignee: Glen Daniels
>     Priority: Blocker
>  Attachments: axis-array-deser-error-patch.txt, diff.patch
>
> When running TCK for JOnAS, sometimes, I fall on array deserialization issue :
> The SOAP Message contains 3 elements of the array, but the constructed array only has the last element. So its size is 1, instead of 3!
> The problem only occurs when using Array with Helper :
> ArrayofBook
> -> Book[] arrayOfBook
> +
> ArrayOfBook_Helper
> I'll attach a patch for test.holders that reproduce this problem.
> failures will appear for testInOutBookArray

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira