[ 
http://issues.apache.org/jira/browse/AXIS-1942?page=comments#action_63872 ]
     
Tim K commented on AXIS-1942:
-----------------------------

On the server side do this in the login() method:

public com.oracle.xmlns.ifs.files.ws.NamedValue[] login(java.lang.String 
username, java.lang.String password, com.oracle.xmlns.ifs.files.ws.NamedValue[] 
options, com.oracle.xmlns.ifs.files.ws.AttributeRequest[] userAttributes) 
throws java.rmi.RemoteException, com.oracle.xmlns.ifs.files.ws.FdkException { 

        // cast to long[], this should work
        long[] tmpServer = (long[]) options[0].getValue();

        return options; 
    } 

On the client side, add the following to the end of your code above:

...
value = binding.login(new java.lang.String("user"), new 
java.lang.String("pass"), value, new 
com.oracle.xmlns.ifs.files.ws.AttributeRequest[0]); 

// THIS CAST WILL FAIL!
long[] tmpClient = (long[]) value.getValue();

Thanks.



> 1.2RC3: rpc/enc mode, encoding long[] as xsd:anyType broken from 1.2RC2
> -----------------------------------------------------------------------
>
>          Key: AXIS-1942
>          URL: http://issues.apache.org/jira/browse/AXIS-1942
>      Project: Axis
>         Type: Bug
>     Versions: 1.2RC3
>  Environment: Tried 1.2RC3 official release, and also 1.2RC3 current nightly 
> build
>     Reporter: Tim K
>     Priority: Blocker
>  Attachments: RemoteLoginManager.wsdl
>
> NOTE: This is a regression from 1.2RC2 Things used to work correctly in RC2 
> but they are broken in RC3 both the official release and the current nightly 
> builds.
> rpc/enc mode, I have a type:
> <complexType name="NamedValue">
> <sequence>
>   <element name="name" nillable="true" type="soapenc:string" /> 
>   <element name="value" nillable="true" type="xsd:anyType" /> 
> </sequence>
> </complexType>
> When for value the *client* side of Axis sends a long[] it gets *properly* 
> encoded as xsd:long[], as in:
> <name xsi:type="soapenc:string">nv1</name>
> <value soapenc:arrayType="xsd:long[5]" xsi:type="soapenc:Array">
>                <item href="#id11"/>
>                <item href="#id12"/>
>                <item href="#id13"/>
>                <item href="#id14"/>
>                <item href="#id15"/>
> </value>
> The cast of the value to long[] works perfectly on the server side, the 
> server correctly creates a long[].
> BUT, when the *server* side of Axis sends a long[] it gets *incorrectly* 
> encoded as xsd:anyType[], as in:
> <name xsi:type="soapenc:string">nv1</name>
> <value soapenc:arrayType="xsd:anyType[5]" xsi:type="soapenc:Array">
>                <item href="#id6"/>
>                <item href="#id7"/>
>                <item href="#id8"/>
>                <item href="#id9"/>
>                <item href="#id10"/>
> </value>
> The client then gets an Object[] back from the server and the cast to 
> (long[]) obviously fails.
> Note that only the *server* side is broken.
> NOTE: This is a regression from 1.2RC2 Things used to work correctly in RC2 
> but they are broken in RC3 both the official release and the current nightly 
> builds.
> This is a blocker bug as it is a regression and the behavior is not correct 
> and different between the client and server code of Axis.

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

Reply via email to