Re: [SOAP] PHP SOAP WSDL rookie needs help

From: Date: Wed, 29 Dec 2010 15:33:47 +0000
Subject: Re: [SOAP] PHP SOAP WSDL rookie needs help
References: 1 2 3 4 5 6 7 8  Groups: php.soap 
Request: Send a blank email to php-soap+get-3189@lists.php.net to get a copy of this message
I'm looking de WSDL file and there are problems ... look this: <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="&quot;https://www.sveadirekt.se/services/ApplicationForLoan&quot;"> &quot; can not be used, you need a valid WSDL file to work with SOAP On Wed, Dec 29, 2010 at 4:10 PM, Mariaxx <sannamari28@gmail.com> wrote: > > 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. > > > -- > PHP Soap Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > >

« previous php.soap (#3189) next »