Domanda

Tutte le librerie richieste sono fissati per il sapone. Sto usando WSDL standard. Spostato il mio codice alla lampada (RedHat Enterprise).

$params = array(
    'test1'=>'Testing',
    'test2'=> '1'
);
$soapClient->method1($params);

$soapClient->getLastRequest();

Risultato:

<test1>Testing</test1>
<test2>false</test2>

ha questo mai successo a nessuno e come hai fatto a risolvere il problema?

È stato utile?

Soluzione

Credo che il problema può essere come Zend_Soap_Client quando il WSDL è un parametro che viene definito come booleana non correttamente convertire un "vero", "1" in una vera e propria booleano. Ho dovuto forzare il tipo di dati da impostare manualmente. Una volta che è stato fatto tutto ha funzionato.

$params = array(
    'test1'=> 'Testing',
    'test2'=> true
);

Credo che la ragione per cui questo è accaduto dovuto fare la con le diverse versioni di PHP.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top