Fatal error: Uncaught exception de type soapfault: [WSDL]

Je vais avoir du mal à appeler un service web j'ai mis en place à partir de PHP. L'obfuscation adresse http://XXX.XXX.XXX.XXX/test.asmx?wsdl dans le message d'erreur ci-dessous retourne valide WSDL. J'ai été tenté de l'appeler comme un service web à l'aide d'un VB.net client, mais quand je l'appelle à partir de PHP sous Debian, j'obtiens le message suivant:

Fatal error: Uncaught exception de type soapfault: [WSDL] SAVON d'ERREUR: Analyse d'un WSDL: 
Impossible de charger à partir de 'http://XXX.XXX.XXX.XXX/test.asmx?wsdl' 
dans /var/www/domain/monsiteweb.com/public_html/catalogue/fomeus/commandes.php:101 

Trace de la pile: 
#0 /var/www/domain/mywebsite.com/public_html/catalog/fomeus/orders.php(101): 
SoapClient->SoapClient('http://XXX.XXX.XXX.XXX/', Array) #1 {principal} jeté 
dans /var/www/domain/mywebsite.com/public_html/catalog/fomeus/orders.php 
sur la ligne 101 

Quel pourrait être le problème? J'ai inclus mon code pour le service web et le client PHP ci-dessous.

Service Web:

Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.ComponentModel
...
' To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
' <System.Web.Script.Services.ScriptService()> _
<System.Web.Services.WebService(Namespace:="http://tempuri.org/")> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(False)> _
Public Class WebService1
Inherits System.Web.Services.WebService 
    <WebMethod()> _
    Public Function HelloWorld() As String
        Return "Hello World"
    End Function
End Class

Client PHP:

require_once($_SERVER['DOCUMENT_ROOT']."/catalog/fomeus/includes/soap/nusoap.php");

$objClient = new soapclient("http://XXX.XXX.XXX.XXX/test.asmx?wsdl",
    array('trace' => 1, 'exception' => 0, 'cache_wsdl' => 0));

print_r($objClient -> HelloWorld());

Je suis en utilisant PHP version 5.2.6 si c'est de l'aide. J'ai été en passant par beaucoup de messages dans les différents forums à essayer de comprendre quel est le problème. Beaucoup de gens ont eu le même problème, mais aucune des solutions que j'ai trouvé à ce jour de travail pour moi. Toute aide serait grandement appréciée.

  • Je n'ai aucune idée de ce que cela peut être, mais, est-il possible pour vous d'essayer nuSOAP?
  • essayez d'emballer un bloc try..catch autour de la ligne où vous créez l'objet SoapClient. N'oubliez pas de la prise doit être d'un type de type soapfault - c'est à dire des captures (de type soapfault $e){} plutôt que de catch (Exception $e) {} à l'Intérieur de la prise, soit de requête à l'exception des champs, (getMessage, etc) ou var_dump l'exception, et puis après ce qu'il vous dit.
  • Pouvez-vous poster le wsdl?
  • Où on lit: "exception" ne faut-il pas lire "exceptions"?
InformationsquelleAutor Daniel | 2011-02-05