2012-11-26 36 views
0

我想從php調用一些wsdl函數。調用wsdl函數時發生UNEXPECTED_ERROR

比方說,我有這兩個功能:

**listStyleCategories** 
Input: 
<xs:complexType name="listStyleCategories"> 
<xs:sequence> 
<xs:element name="arg0" type="xs:string" minOccurs="0"/> 
</xs:sequence> 
Output: 
<xs:complexType name="listStyleCategoriesResponse"> 
<xs:sequence> 
<xs:element name="return" type="tns:listStyleCategoriesOutputBean" minOccurs="0"/> 
</xs:sequence> 
</xs:complexType> 
<xs:complexType name="listStyleCategoriesOutputBean"> 
<xs:sequence> 
<xs:element name="categories" type="xs:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/> 
<xs:element name="statusInfo" type="xs:int" minOccurs="0"/> 
</xs:sequence> 
</xs:complexType> 

**listStyleTypes** 
Input: 
<xs:complexType name="listStyleTypes"> 
<xs:sequence> 
<xs:element name="arg0" type="tns:listStyleTypesInputBean" minOccurs="0"/> 
</xs:sequence> 
</xs:complexType> 
<xs:complexType name="listStyleTypesInputBean"> 
<xs:sequence> 
<xs:element name="category" type="xs:string" minOccurs="0"/> 
<xs:element name="language" type="xs:string" minOccurs="0"/> 
</xs:sequence> 
</xs:complexType> 
Output: 
<xs:complexType name="listStyleTypesResponse"> 
<xs:sequence> 
<xs:element name="return" type="tns:listStyleTypesOutputBean" minOccurs="0"/> 
</xs:sequence> 
</xs:complexType> 
<xs:complexType name="listStyleTypesOutputBean"> 
<xs:sequence> 
<xs:element name="detail" type="tns:listStyleTypesOutputDetailBean" nillable="true" minOccurs="0" maxOccurs="unbounded"/> 
<xs:element name="statusInfo" type="xs:int" minOccurs="0"/> 
</xs:sequence> 
</xs:complexType> 
<xs:complexType name="listStyleTypesOutputDetailBean"> 
<xs:sequence> 
<xs:element name="icon" type="xs:base64Binary" minOccurs="0"/> 
<xs:element name="styleId" type="xs:int" minOccurs="0"/> 
<xs:element name="type" type="xs:string" minOccurs="0"/> 
</xs:sequence> 
</xs:complexType> 

當我打電話的第一個,它有一個參數,一切正常的話:

$param = array('arg0' =>$language); 
$result = $client->listStyleCategories($param); 
$result_arr = objectToArray($result); 
echo "<pre>";print_r($result_arr);echo "</pre>"; 

但是當我打電話的第二個功能與兩個參數,我得到一個UNEXPECTED_ERROR:

$param = array('category' =>'Woman','language'=>$language); 
$result = $client->listStyleTypes($param); 
$result_arr = objectToArray($result); 
echo "<pre>";print_r($result_arr);echo "</pre>"; 

我知道,'女'貓egory和定義的語言是正確的。也許我正在構建錯誤的參數?

在此先感謝。

回答

0

我會嘗試這樣的事:

$params = array('arg0' => array('category' =>'Woman','language'=>$language)); 
$result = $client->listStyleTypes($param); 

listStyleTypes功能相似,但arg0 是兩個值的複雜類型(散)。

+0

非常感謝!有效! –

相關問題