WSDL Webservice Daten übergeben

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • WSDL Webservice Daten übergeben

    Hi zusammen,

    Hier die Ausgabe der WSDL:

    Quellcode

    1. <?xml version="1.0" encoding="utf-8"?>
    2. <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    3. <soap:Body>
    4. <CreateUser xmlns="http://webservices.anbieter.net/User">
    5. <securityToken>string</securityToken>
    6. <userInfo>
    7. <EmailAddress>string</EmailAddress>
    8. <FirstName>string</FirstName>
    9. <LastName>string</LastName>
    10. <TelephoneNumber>string</TelephoneNumber>
    11. <CoverPage>string</CoverPage>
    12. <FileFormat>string</FileFormat>
    13. <MobilePhone>string</MobilePhone>
    14. <AccountingCode>string</AccountingCode>
    15. <CultureCode>string</CultureCode>
    16. <OnSuccessReplyTo>string</OnSuccessReplyTo>
    17. <OnFailureReplyTo>string</OnFailureReplyTo>
    18. <Archiving>boolean</Archiving>
    19. <FaxHeader>string</FaxHeader>
    20. <Custom1>string</Custom1>
    21. <Custom2>string</Custom2>
    22. </userInfo>
    23. </CreateUser>
    24. </soap:Body>
    25. </soap:Envelope>
    Alles anzeigen


    Dazu habe ich mir folgenden Code gebastelt:

    Quellcode

    1. $send->securityToken = $TheToken;
    2. $send->userInfo->EmailAddress = $createemail;
    3. $send->userInfo->FirstName = $createfirstname;
    4. $send->userInfo->LastName = $createlastname;
    5. $send->userInfo->TelephoneNumber = $createtelephone;
    6. $send->userInfo->CoverPage = $createcoverpage;
    7. $send->userInfo->FileFormat = $createfileformat;
    8. $send->userInfo->Archiving = $createarchiving;
    9. $client = new SoapClient( "http://webservices.anbieter.net/Service.asmx?WSDL",array("trace" => 1, "exceptions" => 1));
    10. $myres = $client->CreateUser($send);
    Alles anzeigen


    Die "Werte" kommen per $_POST und werden von einem Eingabeformular übergeben, daran sollte es nicht scheitern.

    Ich bekomme folgende Rückmeldung:

    Quellcode

    1. Fatal error: Uncaught SoapFault exception: [soap:Client] InvalidArgumentFault in /opt/lampp/htdocs/provisioning/do_create_user.php:32 Stack trace: #0 [internal function]: SoapClient->__call('CreateUser', Array) #1 /opt/lampp/htdocs/provisioning/do_create_user.php(32): SoapClient->CreateUser(Object(stdClass)) #2 /opt/lampp/htdocs/provisioning/usermain.php(103): include('/opt/lampp/htdo...') #3 {main} thrown in /opt/lampp/htdocs/provisioning/do_create_user.php on line 32


    Was will er denn nur? Soweit sollte das doch eigentlich passen, oder? Ich versteh es ned, da hat man das Gefühl es endlich zu verstehen und damit arbeiten zu können und dann sitzt man auf einmal wieder vor einem dicken Problem und hat das Gefühl keinerlei Ahnung zu haben :(

    Vielleicht kann mir jemand die Richtung zeigen, wäre nett.

    Danke vorab fürs draufschaun,
    Matthias
    Das Leben ist binär - du bist eine 1, oder eine 0
  • Hi!

    Hier nun der funktionierende Code:

    Quellcode

    1. $client = new SoapClient( "http://webservices./Service.asmx?WSDL",array("trace" => 1, "exceptions" => 1));
    2. $send->securityToken = $TheToken;
    3. $send->userInfo->EmailAddress = "lala@lulu.de";
    4. $send->userInfo->FirstName = "Matthias";
    5. $send->userInfo->LastName = "Nachname";
    6. $send->userInfo->TelephoneNumber = "49178nixda";
    7. $send->userInfo->CoverPage = "Generica";
    8. $send->userInfo->FileFormat = "PDF";
    9. $send->userInfo->CultureCode = "de";
    10. $send->userInfo->Archiving = "1";
    11. $res = $client->CreateUser($send);
    12. // print_r($send);
    13. ?>
    Alles anzeigen


    Der Fehler war ein Stück fehlende Dokumentation, dort war CultureCode nicht als Mandatory angegeben.
    Das Leben ist binär - du bist eine 1, oder eine 0