Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Passaggio errori SOAP

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    48

    Passaggio errori SOAP

    Buonasera a tutti,
    sto creando un web service. la mia "applicazione" è composta da 3 parti:
    il server che implementa le funzioni e utilizza SoapServer.
    il client che chiama le funzioni e utilizza SoapClient.
    il file WSDL che descrive il servizio.

    funziona tutto, a parte che non so come fare quando capita un errore nell'esecuzione di una funzione.
    ovviamente al client interessa sapere quale specifico errore si è verificato, quindi non basta che la funzione ritorni false.

    ho visto che in SoapServer c'è il metodo:
    public void fault ( string $code , string $string [, string $actor [, string $details [, string $name ]]] )
    che sembra servire allo scopo, ma non riesco ad usarlo.

    ho fatto qualcosa del genere:

    Codice PHP:
    $server = new SoapServer("file.wsdl");

    function 
    get_qualcosa($id)
    {
    if(
    controlla_id($id))
    return 
    "ciao";
    else
    $server->fault("1""errore");

    qualcuno mi può aiutare?
    grazie

  2. #2
    ma server->fault hai detto che è void quindi non torna nulla, servirà probabilmente per il loggin del server soap... che intendi per errore? in teoria dovresti ritornare null/false e il client capirebbe che c'è stato un errore... se vuoi specificare l'errore allora devi tornare sempre un oggetto composto che abbia al suo interno tre proprietà: codice risposta, messaggio e object... in codice risposta ci metti il codice errore (o 200 se tutto è ok ad esempio), in message ci scrivi una descrizione dell'errore quando si verifica (opzionale), in object ci metti quello che deve tornare la funzione...stringa, numero, oggetto, boolean, null, quello che serve insomma...
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.