Problema com o SOAP

8 views
Skip to first unread message

Alex GC

unread,
Oct 15, 2009, 8:48:21 AM10/15/09
to Portugal PHPUG
Ola

Estou a tentar executar um SOAP request mas até agora não tenho tido
muito sucesso. Já experimentei no soapUI e consigo executar o pedido
sem problemas obtendo os resultados que pretendo.

Estou a usar o nusoap para fazer o pedido.


<?php
require_once('../lib/nusoap.php');
$wsdl= 'http://provided-wsdl-file.wsdl';
$client = new nusoap_client($wsdl, true);
$client->loadWSDL();
//é necessário forçar o endpoint para um diferente do que está no
ficheiro wsdl
$client->forceEndpoint = 'http://endpoint';
$result = $client->call('getLista');

if ($client->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
$err = $client->getError();
if ($err) {
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
echo '<h2>Result</h2><pre>';
print_r($result);
?>

Qualquer ajuda que me possam dar agradeço.

Obrigado










Paulo Azevedo

unread,
Oct 15, 2009, 1:34:35 PM10/15/09
to portuga...@googlegroups.com
Esquece o NUSoap e usa directamente a extensão SOAP do PHP5 ou então a do WsO2 tank.

-Paulo

2009/10/15 Alex GC <alex...@gmail.com>



--
-Paulo

Fernando André

unread,
Oct 17, 2009, 9:44:32 AM10/17/09
to Portugal PHPUG
Por acaso também estou a usar soap do php5 e não tenho tido problemas.

No entanto já ouvi dizer que carregar os resultados recebidos de
nuSoap é mais fácil dado que o nuSoap fazia isso por mim
e o mesmo para enviar dados.

Com soap php5 vou começar agora com uma parte mais complicada sendo a
transmissão dos dados já fiz testes mas de php para php e sem
problemas agora de php para um webservice numa linguagem diferente
começam a surgir complicações.

No meu caso aproveito para colocar uma pergunta, como separo um DOM
Document construído dinamicamente por mim em elementos com tag
completa e conteudo xml de forma em que cada opening / closing tag
inferior a x caracteres fique num indice de array diferente ?

Ainda não abordei a questão com tempo pois tenho tido outras situações
pelo meio mas se alguém tiver tido este problema agradeço qualquer
dica.

Cumprimentos,
FR


On Oct 15, 6:34 pm, Paulo Azevedo <hal...@gmail.com> wrote:
> Esquece o NUSoap e usa directamente a extensão SOAP do PHP5 ou então a do
> WsO2 tank.
> -Paulo
>
> 2009/10/15 Alex GC <alexg...@gmail.com>

Fernando André

unread,
Nov 24, 2009, 6:29:03 AM11/24/09
to Portugal PHPUG
$xml = file_get_contents("../../xml/LL1234.xml");

$x = simplexml_load_string($xml);

function viewElements($x){
$Arr = $GLOBALS['Arr'];
if (count($x->attributes()) > 0 ){
$attr='';
foreach ($x->attributes() as $k => $v ){
$attr .= " $k='".$v."'";
}
}

$Arr[] = "<".$x->getName()." $attr>\n";
if (count($x->children()) > 0 ){
foreach ($x->children() as $k ){
$GLOBALS['Arr'] = $Arr;
viewElements($k);
$Arr = $GLOBALS['Arr'];
}
}else{
$Arr[] = $x[0];
}

$Arr[] = "</".$x->getName().">";
$GLOBALS['Arr'] = $Arr;
}

foreach ($x->children() as $k ){
viewElements($k);
}

foreach ($GLOBALS['Arr'] as $k ){
print $k."\n";
}
?>
Reply all
Reply to author
Forward
0 new messages