Re: SOAP - function does not exist?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jun 30, 2008 at 11:08 AM, Will Fitch <fitchwh@xxxxxxxxx> wrote:

>  It doesn't look like the SOAP service at
> http://new.vehicletransportusa.com/v2/services/URS.QuoteServices.phpdoesn't actually implement a function called "getOrderHistory".
>
>
>
> Can you verify that?
>
>
>
> *From:* Dan Joseph [mailto:dmjoseph@xxxxxxxxx]
> *Sent:* Monday, June 30, 2008 9:52 AM
> *To:* Will Fitch
> *Cc:* PHP General List
> *Subject:* Re:  SOAP - function does not exist?
>
>
>
>
>
> On Mon, Jun 30, 2008 at 10:48 AM, Will Fitch <fitchwh@xxxxxxxxx> wrote:
>
> Your WSDL is referencing a document literal service.  How are you making
> the
> request?  For instance, look at this example:
>
> $soap = new SoapClient('some.wsdl');
> $soap->getOrderHistory('somestring');
>
> The above might not work as your document literal service (not RPC) is
> looking for the data in the SOAP headers, not the body.  You may have to
> attach the data to the headers and use __call() rather than RPC.
>
> Can you provide the WSDL (as attachment please)
>
>
> -----Original Message-----
> From: Dan Joseph [mailto:dmjoseph@xxxxxxxxx]
> Sent: Monday, June 30, 2008 9:43 AM
> To: PHP General List
> Subject:  SOAP - function does not exist?
>
> Hi,
>
> I've got a web service that I have created that.  It has several functions,
> here is the var_dump of __getfunctions();
>
> array(11) {
>  [0]=>
>  string(52) "getQuoteResponse getQuote(getQuote $getquoterequest)"
>  [1]=>
>  string(64) "submitOrderResponse submitOrder(submitOrder
> $submitorderrequest)"
>  [2]=>
>  string(64) "updateQuoteResponse updateQuote(updateQuote
> $updatequoterequest)"
>  [3]=>
>  string(68) "accountLoginResponse accountLogin(accountLogin
> $accountloginrequest)"
>  [4]=>
>  string(80) "accountPasswordResponse accountPassword(accountPassword
> $accountpasswordrequest)"
>  [5]=>
>  string(64) "accountInfoResponse accountInfo(accountInfo
> $accountinforequest)"
>  [6]=>
>  string(72) "accountUpdateResponse accountUpdate(accountUpdate
> $accountupdaterequest)"
>  [7]=>
>  string(80) "getQuoteHistoryResponse getQuoteHistory(getQuoteHistory
> $getquotehistoryrequest)"
>  [8]=>
>  string(80) "getQuoteDetailsResponse getQuoteDetails(getQuoteDetails
> $getquotedetailsrequest)"
>  [9]=>
>  string(80) "getOrderHistoryResponse getOrderHistory(getOrderHistory
> $getorderhistoryrequest)"
>  [10]=>
>  string(80) "getOrderDetailsResponse getOrderDetails(getOrderDetails
> $getorderdetailsrequest)"
> }
>
>
> The response I am getting is:
>
> SoapFault Object
> (
>    [message:protected] => Function 'getOrderHistory' doesn't exist
>    [string:private] =>
>    [code:protected] => 0
>    [file:protected] => /home/yerkes/public_html/soap/client.php
>    [line:protected] => 74
>    [trace:private] => Array
>        (
>            [0] => Array
>                (
>                    [function] => __call
>                    [class] => SoapClient
>                    [type] => ->
>                    [args] => Array
>                        (
>                            [0] => getOrderHistory
>                            [1] => Array
>                                (
>                                    [0] => Array
>                                        (
>                                            [id] => 24
>                                            [key] => asdlkjf
>                                            [username] =>
> djoseph@xxxxxxxxxxxxxx
>                                            [startdate] => 2008-05-01
>                                            [enddate] => 2008-05-31
>                                            [password] => xxxxx
>                                        )
>
>                                )
>
>                        )
> }
>
>                )
>
>
> I have gone over the wsdl countless times, and do not see anything wrong
> it.  Can anyone tell me where to begin trouble shooting this?  I can post
> code from the client and class if need be.  I guess I'm mainly trying to
> figure out: Does this point to a wsdl problem, or code problem?
>
> --
> -Dan Joseph
>
> www.canishosting.com - Plans start @ $1.99/month.
>
> "Build a man a fire, and he will be warm for the rest of the day.
> Light a man on fire, and will be warm for the rest of his life."
>
>
> Hi Will, thanks for the response.  Here is the wsdl.
>
> I am calling the service with:
>
> <?php
>
> $client = new SoapClient( "
> http://new.vehicletransportusa.com/v2/services/URS.QuoteServices.wsdl"; );
>
> $d = $client->getOrderHistory( $data );
>
> ?>
>
> --
> -Dan Joseph
>
> www.canishosting.com - Plans start @ $1.99/month.
>
> "Build a man a fire, and he will be warm for the rest of the day.
> Light a man on fire, and will be warm for the rest of his life."
>

Ahhh!  You are right on with that!  I forgot to put $ursqs->addFunction(
"getOrderHistory" );  I added it, its working now.

Thanks Will!

-- 
-Dan Joseph

www.canishosting.com - Plans start @ $1.99/month.

"Build a man a fire, and he will be warm for the rest of the day.
Light a man on fire, and will be warm for the rest of his life."

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux