Ankündigung

Einklappen
Keine Ankündigung bisher.

SoapClient zur Weiterentwicklung --Erledigt--

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • SoapClient zur Weiterentwicklung --Erledigt--

    Hallo,

    ich suche Unterstützung bei der "Entwicklung" eines SoapClients oder einem fertigem Skript das ich selbst anpassen kann. Entwicklung ist wahrscheinlich etwas hoch angesetzt. Es sollen 5 Parameter übergeben werden und zurück kommt "hurra" oder eine Fehlermeldung. Der Soap-Server bietet WSDL und Soap 1.1/1.2 an. Entsprechende Aufwandsentschädigung ist kein Problem.

    MfG Bernd

  • #2
    Die Zahl der Parameter wird vom Server vorgegeben, daran kannst du auf der Clientseite nix ändern...

    Ein SOAP Client ist mit wenigen Zeilen implementiert:
    PHP-Code:
    try {
        
    // nur als Beispiel... 
        
    $soapParams = [
            
    'uri' => '...'// namespace URI
            
    'soap_version' => SOAP_1_2,
            
    'trace' => 1,
            
    'encoding' => 'UTF-8',
            
    'features' => SOAP_SINGLE_ELEMENT_ARRAYS,
            
    'keep_alive' => false,
            
    'cache_wsdl' => WSDL_CACHE_NONE
        
    ];

        
    $wsdl 'http://example.com/?wsdl=1';

        
    $client = new SoapClient($wsdl$soapParams);
        
    // print_r($client->__getFunctions());

        // hier dann der SOAP Funktionsaufruf...
        
    $callable = [
            
    $client
            
    'soapFunction'
        
    ];
        
    $callParams = [
            
    'param1' => 1,
            
    'param2' => 2,
        ];

        
    $result call_user_func_array($callable$callParams);
        
    // fertig...
    }
    catch(
    SoapFault $f) {
        
    var_dump($f);

    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

    Kommentar


    • #3
      @lstegelitz - Danke für die Rückmeldung, ein Stückchen weiter bin ich schon Dank Google. Was mir jetzt noch Fehlt ist Rückgabe auszuwerten.

      PHP-Code:
      $client = new SoapClient($wsdl);
      $result $client->ws_dateiupload([
          
      'login' => [
              
      'name' => $name,
              
      'passwort' => $passwort,
              
      'filialenr' => $filialenr
          
      ],
          
      'datei' => [
              
      'dateiname' => $dateiname,
              
      'erweiterung' => $erweiterung,
              
      'kennung' => $kennung,
              
      'intnr' => $intnr,
              
      'beschreibung' => $beschreibung,
              
      'base64string' => $base64string,
              
      'windream' => $windream,
              
      'sanivision' => $sanivision
          
      ]
      ]);
      print_r($result);
      ?> 


      Code:
      stdClass Object
      (
          [ws_dateiuploadResult] => stdClass Object
              (
                  [erfolg] => 1
                  [meldung] =>
                  [probleme] => stdClass Object
                      (
                          [suchparameter] => stdClass Object
                              (
                              )
                          [xmlstring] => stdClass Object
                              (
                              )
                          [parameter] => stdClass Object
                              (
                              )
                          [sqlfehler] => stdClass Object
                              (
                              )
                          [fehler] => stdClass Object
                              (
                              )
                      )
              )
      )
      Ich hätte jetzt allerdings erwartet eine XML Struktur zurück zu bekommen...

      Kommentar


      • #4
        Naja, du siehst ja den Aufbau der Rückgabe...
        PHP-Code:
        $result->ws_dateiuploadResult->erfolg 
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          Zitat von lstegelitz Beitrag anzeigen
          Naja, du siehst ja den Aufbau der Rückgabe...
          PHP-Code:
          $result->ws_dateiuploadResult->erfolg 
          Ups, das ist ja einfach. OK, wenn programmieren könnte, hätte ich das natürlich auch gewusst.

          Denn werde ich mich mal mit der Fehlerbehandlung auseinandersetzen.

          Kommentar

          Lädt...
          X