Re: [SOAP] PHP SOAP WSDL rookie needs help

[email protected] (Mariaxx) Wed, 29 Dec 2010 07:10:52 -0800 (PST)
Newsgroups php.soap
Message-ID <[email protected]>
Could I send it to you? I don't feel comfortble pasting it here.

Maria


Ivan Rodriguez wrote:
> 
> Do you have the service code?
> 
> On Wed, Dec 29, 2010 at 3:56 PM, Mariaxx <[email protected]> wrote:
>>
>> I tried, but still
>>
>> Fatal error: Uncaught SoapFault exception: [soap:Client] Fault:
>> java.lang.NullPointerException in /home/admin/public_html/uusi.php:99
>> Stack
>> trace: #0 [internal function]: SoapClient->__call('createAppli...',
>> Array)
>> #1 /home/admin/public_html/uusi.php(99):
>> SoapClient->createApplication(Array) #2 {main} thrown in
>> /home/admin/public_html/uusi.php on line 99
>>
>> line 99 being the line for the call, E.g.
>>
>> $client->serviceCall((array) $myObject);
>>
>> Though I changed the $myObject to be $form in your example.
>>
>>
>> Ivan Rodriguez wrote:
>>>
>>> Looking your code, there is a error in the array declaration, in the
>>> key Firstname, you have two '
>>>
>>> One trick to pass objects to the service is doing the following:
>>> $client->serviceCall((array) $myObject);
>>>
>>> $form = array(
>>>       'myObject' => array(
>>>               'Loan' => array(
>>>                       'Product' => 1,
>>>                       'LoanAmount' => 10000,
>>>                       'PaymentTime' => 10,
>>>                       'Insurance' => 0,
>>>                       'Salary' => 40000,
>>>                       'Bank' => 'some'
>>>               ),
>>>               'PersonalInfo' => array(
>>>                       'FirstName' => 'Test',
>>>                       'LastName' => 'Example',
>>>                       'AddressCoName' => '',
>>>                       'StreetAddress' => 'Something 1',
>>>                       'ZipCode' => 12345,
>>>                       'City' => 'Some'
>>>               ),
>>>               'Living' => array(
>>>                       'ApartmentFee' => 0,
>>>                       'Rent' => 0,
>>>                       'StudyLoan' =>0,
>>>                       'Guarantee' => ''
>>>               )
>>>       )
>>> );
>>>
>>> foreach($form as $className => $items) {
>>>       $cn = ucfirst($className);
>>>
>>>       if(class_exists($cn)) {
>>>               $$className = new $cn;
>>>               foreach($items as $item => $value) {
>>>                       if($value)
>>>                               $$className->$item = $value;
>>>               }
>>>       } else {
>>>               $$className = $items;
>>>       }
>>> }
>>>
>>> And them invoke service doing:
>>>
>>> $client->serviceCall((array) $myObject);
>>>
>>> Try with this trick, and good luck :)
>>>
>>>
>>> On Wed, Dec 29, 2010 at 2:34 PM, Richard Quadling <[email protected]>
>>> wrote:
>>>> On 29 December 2010 11:43, Mariaxx <[email protected]> wrote:
>>>>>
>>>>> Ok, I'm still stuck with this one.
>>>>>
>>>>> headers seem to work, because  $ok = $client->__setSoapHeaders(
>>>>> $soapHeaders
>>>>> ); returns true, correct?
>>>>>
>>>>> However I'm getting "Fault: java.lang.NullPointerException" when I try
>>>>> to
>>>>>
>>>>> $result =  $client->createApplication(array(here starts extremely long
>>>>> array, see below...));
>>>>>
>>>>> According to several threads on this forum, the above error suggests
>>>>> that
>>>>> the error is in the server and nullPointerException should never be
>>>>> returned. Does it mean, that my data in in the wrong format and the
>>>>> server
>>>>> can't handle it/error, when I try to connect?
>>>>>
>>>>> Maria
>>>>>
>>>>> Here's the call:
>>>>> $result =  $client->createApplication(array('Loan' => array('Product'
>>>>> =>
>>>>> 1,
>>>>>                                                        'LoanAmount' =>
>>>>> 10000,
>>>>>                                                        'PaymentTime'
>>>>> =>
>>>>> 10,
>>>>>                                                        'Insurance' =>
>>>>> 0,
>>>>>                                                        'Salary' =>
>>>>> 40000,
>>>>>                                                        'Bank' =>
>>>>> 'some'),
>>>>>                                'PersonalInfo' => array(''FirstName' =>
>>>>> 'Test',
>>>>>                                                        'LastName' =>
>>>>> 'Example',
>>>>>                                                        'AddressCoName'
>>>>> => '',
>>>>>                                                        'StreetAddress'
>>>>> => 'Something 1',
>>>>>                                                        'ZipCode' =>
>>>>> 12345,
>>>>>                                                        'City' =>
>>>>> 'Some'),
>>>>>                                'Living' => array('ApartmentFee' => 0,
>>>>>                                                        'Rent' => 0,
>>>>>                                                        'StudyLoan'
>>>>> =>0,
>>>>>                                                        'Guarantee' =>
>>>>> '')));
>>>>>
>>>>>
>>>>> RQuadling wrote:
>>>>>>
>>>>>> On 22 December 2010 19:46, Mariaxx <[email protected]> wrote:
>>>>>>>
>>>>>>> I'm new to SOAP. I need to pass information via form to wsdl
>>>>>>> service.
>>>>>>>
>>>>>>> I'm unable to understand few things:
>>>>>>>
>>>>>>> 1) Do I need to write <soapenv: Envelope... kind of tags, or do I
>>>>>>> just
>>>>>>> get
>>>>>>> them by using PHP functions such as $a = new SoapClient() ?
>>>>>>>
>>>>>>> 2) Do I still need to pass normal HTTP header with XML definition
>>>>>>> plus
>>>>>>> SOAP
>>>>>>> header + SOAP body with PHP
>>>>>>>
>>>>>>> I get response from the server saying that my Header is missing.
>>>>>>> Also what does this mean: "Uncaught SoapFault exception:
>>>>>>> [soap:Client]
>>>>>>> Fault: java.lang.NullPointerException "
>>>>>>>
>>>>>>> I'd really appreciate your help. I shouldn't have taken this job : |
>>>>>>
>>>>>> Take a look at
>>>>>> http://old.nabble.com/forum/ViewPost.jtp?post=30277723&framed=y
>>>>>> and subsequent messages. They talk about getting taking a wsdl file
>>>>>> and creating a set of PHP classes from it, which allow you to talk to
>>>>>> the service without the need of creating any XML.
>>>>>>
>>>>>> The error message you are getting is the same as
>>>>>> http://old.nabble.com/forum/ViewPost.jtp?post=30470719&framed=y
>>>>>>
>>>>>> A possibility to the cause was mentioned in
>>>>>> http://old.nabble.com/forum/ViewPost.jtp?post=30480330&framed=y and a
>>>>>> possible solution in
>>>>>> http://old.nabble.com/forum/ViewPost.jtp?post=30480433&framed=y
>>>>>>
>>>>>> Richard.
>>>>>>
>>>>>> --
>>>>>> Richard Quadling
>>>>>> Twitter : EE : Zend
>>>>>> @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY
>>>>>>
>>>>>> --
>>>>>> PHP Soap Mailing List (http://www.php.net/)
>>>>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://old.nabble.com/PHP-SOAP-WSDL-rookie-needs-help-tp30516854p30550653.html
>>>>> Sent from the Php - Soap mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>> --
>>>>> PHP Soap Mailing List (http://www.php.net/)
>>>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>>>
>>>>>
>>>>
>>>> I don't think the array() is correct. It has to be of a type passable
>>>> to the service.
>>>>
>>>> Where is the WSDL file?
>>>>
>>>> I'll show you how to build the classes.
>>>>
>>>> --
>>>> Richard Quadling
>>>> Twitter : EE : Zend
>>>> @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY
>>>>
>>>
>>> --
>>> PHP Soap Mailing List (http://www.php.net/)
>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://old.nabble.com/PHP-SOAP-WSDL-rookie-needs-help-tp30516854p30551650.html
>> Sent from the Php - Soap mailing list archive at Nabble.com.
>>
>>
>> --
>> PHP Soap Mailing List (http://www.php.net/)
>> To unsubscribe, visit: http://www.php.net/unsub.php
>>
>>
> 
> --
> PHP Soap Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/PHP-SOAP-WSDL-rookie-needs-help-tp30516854p30551767.html
Sent from the Php - Soap mailing list archive at Nabble.com.