2008年10月28日星期二

RE: [fw-webservices] See the soap message

I think i still don't understand it.

I tried a testserver:

<?
set_include_path('./library/');
require_once('Zend/Loader.php');
Zend_Loader::registerAutoload();

$wsdl = "http://www.ejse.com/WeatherService/Service.asmx?WSDL";
$options = array('trace' => true);

$client = new Zend_Soap_Client($wsdl);
$client ->setEncoding("UTF-8");
$client ->setSoapVersion(SOAP_1_1);
$params = array(
"zipCode" => '1082'
);
$client->GetWeatherInfo($params);
$bla = $client->getLastRequest();
Zend_Debug::dump($bla, 'bla',true);

?>

But this gives me the result:
Fatal error: Uncaught SoapFault exception: [soap:Server] Server was unable
to process request. --> Object reference not set to an instance of an
object. in /usr/local/wwwroot/jigal/library/Zend/Soap/Client.php:887 Stack
trace: #0 [internal function]: SoapClient->__call('GetWeatherInfo', Array)
#1 [internal function]: Zend_Soap_Client_Common->GetWeatherInfo(Array) #2
/usr/local/wwwroot/jigal/library/Zend/Soap/Client.php(887):
call_user_func_array(Array, Array) #3 [internal function]:
Zend_Soap_Client->__call('GetWeatherInfo', Array) #4
/usr/local/wwwroot/jigal/wstest.php(15):
Zend_Soap_Client->GetWeatherInfo(Array) #5 {main} thrown in
/usr/local/wwwroot/jigal/library/Zend/Soap/Client.php on line 887

DerMika wrote:
>
> Well, assuming the soap server has a method TestMe (defined in the WSDL
> for example) with a parameter number (which is of type integer) you do
> this:
>
> $client->TestMe(array($number));
>
> $bla = $client->getLastRequest();
>
> You can also do this:
>
> $client->__call('TestMe', array($number));
>
> $bla = $client->getLastRequest();
>
>
>
> -----Original Message-----
> From: jjsanders [mailto:jigalroecha@gmail.com]
> Sent: dinsdag 28 oktober 2008 13:29
> To: fw-webservices@lists.zend.com
> Subject: RE: [fw-webservices] See the soap message
>
>
> ok but then I first need to do an request. .. I assume.
> How do I do that?
> How do I send out an SoapRequest?
>
> This is what I have till now:
>
> $options = array('trace' => true);
>
> $client = new Zend_Soap_Client($wsdl);
> $client ->setEncoding("UTF-8");
> $client ->setSoapVersion(SOAP_1_1);
>
> $bla = $client->getLastRequest();
>
> Zend_Debug::dump($bla, 'bla',true);
>
> beberlei wrote:
>>
>>
>> this is why its called "getLastRequest", you can only use it AFTER the
>> request has been fired. How should it know which soap Action with
> which
>> parameters you are calling?
>>
>> On Tue, 28 Oct 2008 02:00:24 -0700 (PDT), jjsanders
>> <jigalroecha@gmail.com>
>> wrote:
>>>
>>> Okaay,
>>>
>>> But why then do i get an empty string?
>>> I just want to see the soap message before it gets sent?
>>>
>>> DerMika wrote:
>>>>
>>>> Trace is enabled by default in Zend_Soap_Client. You don't have to
>>>> define it.
>>>>
>>>> Just use the getlastresponse and getlastrequest methods, they should
>>>> work.
>>>>
>>>> Dieter
>>>>
>>>> -----Original Message-----
>>>> From: jjsanders [mailto:jigalroecha@gmail.com]
>>>> Sent: dinsdag 28 oktober 2008 9:20
>>>> To: fw-webservices@lists.zend.com
>>>> Subject: Re: [fw-webservices] See the soap message
>>>>
>>>>
>>>> When i do $client = new Zend_Soap_Client($wsdl, array('trace' =>
> true));
>>>> I get the error message:
>>>> Fatal error: Uncaught exception 'Zend_Soap_Client_Exception' with
>>>> message
>>>> 'Unknown SOAP client option' in
>>>> /usr/local/wwwroot/jigal/library/Zend/Soap/Client.php:223 Stack
> trace:
>>>> #0
>>>> /usr/local/wwwroot/jigal/library/Zend/Soap/Client.php(122):
>>>> Zend_Soap_Client->setOptions(Array) #1
>>>> /usr/local/wwwroot/jigal/wstest.php(10):
>>>> Zend_Soap_Client->__construct('http://andijvie...', Array) #2 {main}
>>>> thrown
>>>> in /usr/local/wwwroot/jigal/library/Zend/Soap/Client.php on line 223
>>>>
>>>> Furthermore:
>>>>
>>>> this
>>>> $client = new Zend_Soap_Client($wsdl, $options);
>>>> $client ->setEncoding("UTF-8");
>>>> $client ->setSoapVersion(SOAP_1_1);
>>>> $bla = $client->getLastRequest();
>>>> Zend_Debug::dump($bla, 'bla',true);
>>>>
>>>> gives me an empty string.
>>>>
>>>>
>>>> beberlei wrote:
>>>>>
>>>>> yes, there are possibilities to see both request and response:
>>>>>
>>>>> $client = new Zend_Soap_Client($wsdl, array('trace' => true));
>>>>>
>>>>> $client->... do stuff;
>>>>>
>>>>> and then you can do:
>>>>>
>>>>> $client->getLastRequest();
>>>>> $client->getLastResponse();
>>>>> $client->getLastRequestHeaders();
>>>>> $client->getLastResponseHeaders();
>>>>>
>>>>> On Monday 27 October 2008 17:45:29 Jigal sanders wrote:
>>>>>> Hello everyone.
>>>>>>
>>>>>> I have the following test stuff for a soap message :
>>>>>>
>>>>>> <?
>>>>>> //if(is_dir('./library/')) echo "ja"; exit;
>>>>>> set_include_path('./library/');
>>>>>> require_once('Zend/Loader.php');
>>>>>> Zend_Loader::registerAutoload();
>>>>>> $wsdl = "http://buzz.nl/WSCRM/SubscriptionService?wsdl";
>>>>>> $client = new Zend_Soap_Client($wsdl);
>>>>>> $client ->setEncoding("UTF-8");
>>>>>> $client ->setSoapVersion(SOAP_1_1);
>>>>>>
>>>>>> Zend_Debug::dump($client, 'bla',true);
>>>>>>
>>>>>> ?>
>>>>>>
>>>>>> is there a way to see the acutal soap message in xml?
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Benjamin Eberlei
>>>>> http://www.beberlei.de
>>>>>
>>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/See-the-soap-message-tp20191520p20202969.html
>>>> Sent from the Zend Web Services mailing list archive at Nabble.com.
>>>>
>>>>
>>>> No virus found in this incoming message.
>>>> Checked by AVG - http://www.avg.com
>>>> Version: 8.0.175 / Virus Database: 270.8.3/1748 - Release Date:
>>>> 27/10/2008 7:57
>>>>
>>>>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/See-the-soap-message-tp20191520p20203472.html
>>> Sent from the Zend Web Services mailing list archive at Nabble.com.
>>
>>
>>
>
> --
> View this message in context:
> http://www.nabble.com/See-the-soap-message-tp20191520p20206306.html
> Sent from the Zend Web Services mailing list archive at Nabble.com.
>
>
> No virus found in this incoming message.
> Checked by AVG - http://www.avg.com
> Version: 8.0.175 / Virus Database: 270.8.3/1748 - Release Date:
> 27/10/2008 22:44
>
>

--
View this message in context: http://www.nabble.com/See-the-soap-message-tp20191520p20209124.html
Sent from the Zend Web Services mailing list archive at Nabble.com.

没有评论: