2012-06-06 2 views
3

Я хотел бы создать XML-схемы на NuSOAP как следующее:Расширение базы на NuSOAP

<xsd:complexType name="WSMessage"> 
    <xsd:sequence> 
     <xsd:element minOccurs="0" maxOccurs="1" name="ErrorMessage" type="s:string"/> 
     <xsd:element minOccurs="0" maxOccurs="1" name="ErrorCode" type="s:string"/> 
    </xsd:sequence> 
</xsd:complexType> 

<s:complexType name="ResultSet"> 
    <s:complexContent mixed="false"> 
     <s:extension base="tns:WSMessage"> 
      <s:sequence> 
       <s:element minOccurs="0" maxOccurs="1" name="TestData" type="tns:ArrayOfTestData"/> 
      </s:sequence> 
     </s:extension> 
    </s:complexContent> 
</s:complexType> 

Я не вижу никакой документации о том, как я мог бы сделать это. Кто-нибудь знает об этом? Спасибо.

ответ

0

Добавить два сложных типа для ввода, то, что я понял в вашем вопросе является его вход и имеет выход

$this->nusaop->wsdl->addComplexType(
      'WSMessage', 
      'complexType', 
      'struct', 
      'all', 
      '', 
      array(
       'ErrorMessage ' => array(
        'MethodParameters' => 'ErrorMessage', 
        'type' => 'xsd:string' 
       ), 
       'ErrorCode' => array(
        'MethodParameters' => 'ErrorCode', 
        'type' => 'xsd:string' 
       ) 
       ) 
     ); 

/Тип ввода данных/

$this->nusaop->wsdl->addComplexType(
      'ResultSet', 
      'complexType', 
      'struct', 
      'all', 
      '', 
      array(
       'TestData' => array(
        'MethodParameters' => 'TestData', 
        'type' => 'xsd:string' 
       ), 
      ) 
     ); 

/Тип вывода данных/

$this->FM_SoapServer->register(
     'Methodcall',// parameter list: 
     array('Credentials'=>'tns:WSMessage'),// return value(s): 
     array('return'=>'tns:ResultSet'),// namespace: 
     false,// soapaction: (use default) 
     false,// style: rpc or document 
     'rpc',// use: encoded or literal 
     'encoded',// description: documentation for the method 
     '' 
    ); 



function Methodcall(){ 
    /// validations .... 
    code.... 
    return array("ResultSet" => $return); 

} 

Непрошеный, но существует логика

Смежные вопросы