Can you please send me your service code, then I will give you the exact
solution.

Deepal

Rodrigo Asensio wrote:
> the most accurate test for my case should be the testCompanyArray()
> where it converts doing something like this
>
> ArrayList resobj = new ArrayList();
> resobj.add(Struct_cards[].class);
> (Class[])resobj.toArray(new Class[resobj.size()])
>
> but the result is the same...  below I'm posting the wsdl and extra
> info that might help (me  :))
>
> results       Object[1]  (id=83)      
>       [0]     Struct_cards  (id=84)   
>               card_delegate   null    
>               card_expire_date        null    
>               card_id null    
>               card_lfd        null    
>               card_name       null    
>               card_type       null    
>               usrfld1 null    
>
> ws created by Macromedia ColdFusion MX version 7,0,2,142559
> <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
> <complexType name="Struct_cards">
> −
> <sequence>
> <element name="card_delegate" nillable="true" type="xsd:string"/>
> <element name="card_expire_date" nillable="true" type="xsd:string"/>
> <element name="card_id" nillable="true" type="xsd:string"/>
> <element name="card_lfd" nillable="true" type="xsd:string"/>
> <element name="card_name" nillable="true" type="xsd:string"/>
> <element name="card_type" nillable="true" type="xsd:string"/>
> <element name="usrfld1" nillable="true" type="xsd:string"/>
> </sequence>
> </complexType>
> −
> <complexType name="ArrayOfStruct_cards">
> −
> <complexContent>
> −
> <restriction base="soapenc:Array">
> <attribute ref="soapenc:arrayType" wsdl:arrayType="impl:Struct_cards[]"/>
> </restriction>
> </complexContent>
> </complexType>
>
>
>
>
> Rodrigo Asensio
> [EMAIL PROTECTED]
> http://www.rodrigoasensio.com
> "To err is human, but to really screw up requires the root password."
>
>
>
> On Wed, Dec 10, 2008 at 2:11 PM, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
>   
>> Have a look at following class , it does what you want to do
>>
>> https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/rpc/RPCCallTest.java
>>
>>     
>>> Class[] returnTypes = new Class[]{(Struct_cards[])}
>>> this don't compile because the objects inside the array must be Class
>>> type, and I already tried that one
>>>
>>> Class[] returnTypes = new Class[]{Struct_cards[].class}
>>>
>>>
>>> Rodrigo Asensio
>>> [EMAIL PROTECTED]
>>> http://www.rodrigoasensio.com
>>> "To err is human, but to really screw up requires the root password."
>>>
>>>
>>>
>>> On Wed, Dec 10, 2008 at 12:50 PM, Deepal Jayasinghe
>>> <[EMAIL PROTECTED]> wrote:
>>>
>>>       
>>>>> Can't return a simple Object[]
>>>>>
>>>>> axis2 141
>>>>>
>>>>> client code:
>>>>> ----------------
>>>>>
>>>>>               RPCServiceClient serviceClient = new RPCServiceClient();
>>>>>               Options options = serviceClient.getOptions();
>>>>>               EndpointReference targetEPR = new EndpointReference(URL);
>>>>>               options.setTo(targetEPR);
>>>>>               options.setTimeOutInMilliSeconds(TIMEOUT);
>>>>>
>>>>>               QName actionQ = new QName(NAMESPACE, action);
>>>>>               Class[] returnTypes = new Class[] { Struct_cards.class };   
>>>>> //
>>>>>
>>>>>           
>>>> Class[] returnTypes = new Class[]{(Struct_cards[])}
>>>>
>>>> would work.
>>>>
>>>>         
>>>>> also
>>>>> tried  Struct_cards[].class
>>>>>               Object[] results = serviceClient.invokeBlocking(actionQ, 
>>>>> params, returnTypes);
>>>>>
>>>>> It returns an array of 1 element Struct_cards with all its values
>>>>> empty, below the XML response and the bean code.
>>>>> I saw that might be a problem of axis2 converting simple object
>>>>> arrays, but I didn't found any proof. Any help will be appreciated.
>>>>>
>>>>>
>>>>> xml returns :
>>>>> -----------------
>>>>>
>>>>> <get_cardsResponse
>>>>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
>>>>> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
>>>>>    <get_cardsReturn
>>>>> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
>>>>> xmlns:ns1="http://icu_test.dev";
>>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>>>> soapenc:arrayType="ns1:struct_cards[2]" xsi:type="soapenc:Array">
>>>>>     <get_cardsReturn xsi:type="ns1:struct_cards">
>>>>>      <card_delegate xsi:type="xsd:string">X</card_delegate>
>>>>>      <card_expire_date xsi:type="xsd:string">XXXX</card_expire_date>
>>>>>      <card_id xsi:type="xsd:string">XXXXXXXXXXXXX</card_id>
>>>>>      <card_lfd xsi:type="xsd:string">xxxx</card_lfd>
>>>>>      <card_name xsi:type="xsd:string">Rodrigo Asensio</card_name>
>>>>>      <card_type xsi:type="xsd:string">1</card_type>
>>>>>      <usrfld1 xsi:type="xsd:string"></usrfld1>
>>>>>     </get_cardsReturn>
>>>>>     <get_cardsReturn xsi:type="ns1:struct_cards">
>>>>>      <card_delegate xsi:type="xsd:string">x</card_delegate>
>>>>>      <card_expire_date xsi:type="xsd:string">xxxxx</card_expire_date>
>>>>>      <card_id xsi:type="xsd:string">xxxxxxxxxxxxxxxxxxxxxxxxx</card_id>
>>>>>      <card_lfd xsi:type="xsd:string">xxxx</card_lfd>
>>>>>      <card_name xsi:type="xsd:string">Rodrigo Asensio</card_name>
>>>>>      <card_type xsi:type="xsd:string">1</card_type>
>>>>>      <usrfld1 xsi:type="xsd:string"></usrfld1>
>>>>>     </get_cardsReturn>
>>>>>    </get_cardsReturn>
>>>>>   </get_cardsResponse>
>>>>>
>>>>> bean code: (very basic)
>>>>> ---------------
>>>>>
>>>>> public class Struct_cards {
>>>>>       protected java.lang.String card_delegate;
>>>>>       protected java.lang.String card_expire_date;
>>>>>       protected java.lang.String card_id;
>>>>>       protected java.lang.String card_lfd;
>>>>>       protected java.lang.String card_name;
>>>>>       protected java.lang.String card_type;
>>>>>       protected java.lang.String usrfld1;
>>>>>
>>>>>       public Struct_cards() {}
>>>>>
>>>>>       public Struct_cards(String card_delegate, String card_expire_date,
>>>>> String card_id, String card_lfd, String card_name,
>>>>>                       String card_type, String usrfld1) {
>>>>>               this.card_delegate = card_delegate;
>>>>>               this.card_expire_date = card_expire_date;
>>>>>               this.card_id = card_id;
>>>>>               this.card_lfd = card_lfd;
>>>>>               this.card_name = card_name;
>>>>>               this.card_type = card_type;
>>>>>               this.usrfld1 = usrfld1;
>>>>>       }
>>>>>
>>>>>       public String getCard_delegate() {
>>>>>               return card_delegate;
>>>>>       }
>>>>>
>>>>>       public void setCard_delegate(String card_delegate) {
>>>>>               this.card_delegate = card_delegate;
>>>>>       }
>>>>>
>>>>>       public String getCard_expire_date() {
>>>>>               return card_expire_date;
>>>>>       }
>>>>>
>>>>>       public void setCard_expire_date(String card_expire_date) {
>>>>>               this.card_expire_date = card_expire_date;
>>>>>       }
>>>>>
>>>>>       public String getCard_id() {
>>>>>               return card_id;
>>>>>       }
>>>>>
>>>>>       public void setCard_id(String card_id) {
>>>>>               this.card_id = card_id;
>>>>>       }
>>>>>
>>>>>       public String getCard_lfd() {
>>>>>               return card_lfd;
>>>>>       }
>>>>>
>>>>>       public void setCard_lfd(String card_lfd) {
>>>>>               this.card_lfd = card_lfd;
>>>>>       }
>>>>>
>>>>>       public String getCard_name() {
>>>>>               return card_name;
>>>>>       }
>>>>>
>>>>>       public void setCard_name(String card_name) {
>>>>>               this.card_name = card_name;
>>>>>       }
>>>>>
>>>>>       public String getCard_type() {
>>>>>               return card_type;
>>>>>       }
>>>>>
>>>>>       public void setCard_type(String card_type) {
>>>>>               this.card_type = card_type;
>>>>>       }
>>>>>
>>>>>       public String getUsrfld1() {
>>>>>               return usrfld1;
>>>>>       }
>>>>>
>>>>>       public void setUsrfld1(String usrfld1) {
>>>>>               this.usrfld1 = usrfld1;
>>>>>       }
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Rodrigo Asensio
>>>>> [EMAIL PROTECTED]
>>>>> http://www.rodrigoasensio.com
>>>>> "To err is human, but to really screw up requires the root password."
>>>>>
>>>>>
>>>>>
>>>>>           
>>>> --
>>>> Thank you!
>>>>
>>>>
>>>> http://blogs.deepal.org
>>>>
>>>>
>>>>
>>>>         
>>>       
>> --
>> Thank you!
>>
>>
>> http://blogs.deepal.org
>>
>>
>>     
>
>   

-- 
Thank you!


http://blogs.deepal.org

Reply via email to