Enviado em 25/09/2018 - 09:01h
Prezados,<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>Procedure 'somar' not present</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<?php
/* URL do servidor referente ao Webservice */
//$serverUrl = "http://www.prolissa.tk/servico3/server.php";
$serverUrl = "http://prolissatk/servico3/server.php";
?>
<?php
require_once __DIR__ . '/vendor/autoload.php';
/* URL do servidor referente ao Webservice */
require_once 'servidor.php';
$options = [
'uri' => $serverUrl,
];
/* Classe do Webservice */
class Calculadora
{
/**
* Informacoes da calculadora.
*
* @param string $firstName
* @return string $greetings
*/
public function sobre($firstName)
{
return 'Calculadora matemática. Desenvolvedor: ' . $firstName;
}
/**
* Somar dois numeros.
*
* @param integer $n1
* @param integer $n2
* @return integer $somaResultado
*/
public function somar($n1, $n2) {
$somaResultado = $n1 + $n2;
return $somaResultado;
}
}
$server = new Zend\Soap\Server(null, $options);
if (isset($_GET['wsdl'])) {
$soapAutoDiscover = new \Zend\Soap\AutoDiscover(new \Zend\Soap\Wsdl\ComplexTypeStrategy\ArrayOfTypeSequence());
$soapAutoDiscover->setUri($serverUrl);
$soapAutoDiscover->setOperationBodyStyle(array('use' => 'literal'));
$soapAutoDiscover->setBindingStyle(array('style' => 'document'));
$soapAutoDiscover->setClass('Calculadora');
// header("Content-Type: text/xml");
// echo $soapAutoDiscover->generate()->toXml();
$soapAutoDiscover->handle();
} else {
$soap = new \Zend\Soap\Server($serverUrl . '?wsdl');
$soap->setObject(new \Zend\Soap\Server\DocumentLiteralWrapper(new Calculadora()));
$soap->handle();
}
?>
<?php
require_once __DIR__ . '/vendor/autoload.php';
/* URL do servidor referente ao Webservice que será consultado */
require_once 'servidor.php';
$serverUrl = $serverUrl . '?wsdl';
/* Instânciando o cliente */
$client = new Zend\Soap\Client($serverUrl);
/* Chamando métodos */
$result = $client->sobre(['firstName' => 'Diego']);
$result2 = $client->somar(['n1' => 4, 'n2' => 3]);
/* Exibindo os resultados */
echo $result->sobreResult . '<br/>';
echo $result2->somarResult . '<br/>';
?>
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalando Discord no Debian 13
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Software livre - será que eu estou tão errado assim? (9)
Boot do PosRog so funciona em notebook (1)