Re: [SOAP] PHP SOAP WSDL rookie needs help

From: Date: Wed, 29 Dec 2010 15:10:52 +0000
Subject: Re: [SOAP] PHP SOAP WSDL rookie needs help
References: 1 2 3 4 5 6 7  Groups: php.soap 
Request: Send a blank email to php-soap+get-3188@lists.php.net to get a copy of this message
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 <sannamari28@gmail.com> 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 <rquadling@gmail.com> >>> wrote: >>>> On 29 December 2010 11:43, Mariaxx <sannamari28@gmail.com> 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 <sannamari28@gmail.com> 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.

« previous php.soap (#3188) next »