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 "Lord Halbert (JIRA)" <ax...@ws.apache.org> on 2007/07/16 23:23:04 UTC

[jira] Commented: (AXIS-2519) array of Strings changed to in java2wsdl

    [ https://issues.apache.org/jira/browse/AXIS-2519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513041 ] 

Lord Halbert commented on AXIS-2519:
------------------------------------

This is the same bug as https://issues.apache.org/jira/browse/AXIS-2386

I've already commented on this bug at the URL above so I'm not going to repeat myself.

I will state that It's a shame that such a severe bug is allowed to continue for 3 MAJOR versions (1.2, 1.3, and 1.4) without being fixed.



> array of Strings changed to <element name="varArray" type="xsd:string"/> in java2wsdl
> -------------------------------------------------------------------------------------
>
>                 Key: AXIS-2519
>                 URL: https://issues.apache.org/jira/browse/AXIS-2519
>             Project: Axis
>          Issue Type: Bug
>          Components: WSDL processing
>    Affects Versions: 1.4
>         Environment: Windows XPSP2, SUN's java 1.4.2_11-b06.
>            Reporter: Grzegorz Grzybek
>            Priority: Critical
>
> I used wsdl2Java and my xsd:complexType, which uses array of strings is properly converted into java.lang.String[]. But when the web service is published and URL with ?wsdl param is used, the generated wsdl says, that my type is simple xsd:string, and not ArrayOfStrings.
> You can easily reproduce this bug - just run the "echo" sample from axis-1.4-src/samples/echo and see http://localhost:8080/axis/services/echo?wsdl and particulary - <complexType name="SOAPArrayStruct"> definition - it's always wrong.
> The TestClient runs fine - it sends array of strings, but we're talking about interoperability - te generated "?wsdl" document is used in .NET environment to generate ws proxies - and instead of string[] there is simply string property.
> It helps when one add:
>    elemField.setItemQName(new QName("http://www.w3.org/2001/XMLSchema", "string"));
> in the static {} block in generated SOAPArrayStruct.java.
> I think the problem is in org.apache.axis.encoding.ser.BeanSerializer.writeField() method:
> both the conditions:
>             if (!SchemaUtils.isSimpleSchemaType(xmlType) &&
>                     Types.isArray(fieldType)) {
>                 xmlType = null;
>             }
>             if (itemQName != null &&
>                     SchemaUtils.isSimpleSchemaType(xmlType) &&
>                     Types.isArray(fieldType)) {
>                 xmlType = null;
>             }
> are not met and the information that the element is array is lost. One of these conditions is met when the array elements are NOT simple schema types.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org