axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andreas Veithen (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AXIS2-5071) Failure to populate all members of an xs:sequence in a SOAP header
Date Fri, 10 Jun 2011 18:31:58 GMT

    [ https://issues.apache.org/jira/browse/AXIS2-5071?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13047356#comment-13047356
] 

Andreas Veithen commented on AXIS2-5071:
----------------------------------------

David,

Thanks for the detailed analysis. The issue is actually a side effect of the changes introduced
by AXIOM-333, which are explained in more details in the Axiom user guide [1]. This means
that all Axis2 versions shipping with Axiom 1.2.10 are affected by this, i.e. 1.5.4, 1.5.5
and 1.6.0. The best fix for this is to call Iterator#remove() before moving the node.

I think that we should also improve Axiom so that it throws a ConcurrentModificationException
in this case (exactly as the iterators from the Java 2 collection framework).

[1] http://ws.apache.org/axiom/userguide/ch04.html#iterator-changes

> Failure to populate all members of an xs:sequence in a SOAP header
> ------------------------------------------------------------------
>
>                 Key: AXIS2-5071
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5071
>             Project: Axis2
>          Issue Type: Bug
>          Components: kernel
>    Affects Versions: 1.6.0
>         Environment: MacOSX Leopard, Apache AXIS 1.6.0, Java 1.6.0_24
>            Reporter: David Green-Lank
>            Assignee: Andreas Veithen
>         Attachments: Screen shot 2011-06-10 at 8.11.15 AM.png, mytest.wsdl
>
>
> There is a soap header declared in the wsdl that points to an element:
>       <xs:element name="authentication">
>         <xs:complexType>
>           <xs:sequence>
>             <xs:element name="username" type="xs:string"/>
>             <xs:element name="password" type="xs:string"/>
>           </xs:sequence>
>           <xs:anyAttribute namespace="##other"/>
>         </xs:complexType>
>       </xs:element>
> After running "sh wsdl2java.sh -uri <uri>" to create stubs, and I populate that
element with:
>     MyTestServiceStub stub = new MyTestServiceStub();
>     MyTestServiceStub.Authentication auth = new MyTestServiceStub.Authentication();
>     auth.setUsername( "username" );
>     auth.setPassword( "password" );
>     stub.operation( new MyTestServiceStub.Operation(), auth, null );
> The following SOAP envelope is sent:
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Header><ns1:authentication
xmlns:ns1="urn:mytest" soapenv:mustUnderstand="false"><ns1:username>username</ns1:username></ns1:authentication></soapenv:Header><soapenv:Body><ns1:operation
xmlns:ns1="urn:mytest" /></soapenv:Body></soapenv:Envelope>
> Notice the supplied password element is missing.
> Screenshot attached.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

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


Mime
View raw message