On 9 May 2011 11:26, Finn Gruwier Larsen <finn@gruwier.dk> wrote: > Den 09-05-2011 12:14, Richard Quadling skrev: >> >> On 9 May 2011 11:12, Finn Gruwier Larsen<finn@gruwier.dk> Âwrote: >>> >>> Den 09-05-2011 12:01, Richard Quadling skrev: >>>> >>>> On 9 May 2011 09:52, Finn Gruwier Larsen<finn@gruwier.dk> Â Âwrote: >>>>> >>>>> Hi, >>>>> >>>>> I am trying to get a SOAP request working. At this line in my code: >>>>> >>>>> $info = $soapClient->__call("getLegalUnit", array($ap_param)); >>>>> >>>>> I get this error: >>>>> >>>>> PHP Fatal error: ÂSOAP-ERROR: Encoding: Cannot find encoding in<file> >>>>> Â<line >>>>> no>. >>>>> >>>>> What does "encoding" mean in this context, and how do I specify it? >>>>> >>>>> Best regards, >>>>> >>>>> Finn >>>>> >>>>> -- >>>>> PHP Soap Mailing List (http://www.php.net/) >>>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>>> >>>>> >>>> >>>> What parameters do you pass to the SOAPClient constructor? >>>> >>>> http://docs.php.net/manual/en/soapclient.soapclient.php >>>> >>>> "The encoding option defines internal character encoding. This option >>>> does not change the encoding of SOAP requests (it is always utf-8), >>>> but converts strings into it." >>>> >>>> I use these options (amongst others) ... >>>> >>>> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â'encoding' Â=> >>>> Â'ISO-8859-1', >>>> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â'exception' => Â ÂTrue, >>>> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â'trace' Â Â => Â ÂTrue, >>>> >>>> Richard. >>>> >>> >>> I only passed the "trace => ÂTrue" parameter. >>> >>> Passing the extra parameters above does not change anything. I also tried >>> "encoding => Â'UTF-8'" with same result. >>> >>> Finn >>> >> >> Can you show more code? >> > > Sure. > > <?php > // Create private key: > $privateKey = openssl_pkey_new(); > > // Create certificate signing request: > $csr = openssl_csr_new(array('http://...'), $privateKey); > > // Get public key: > $publicKey = openssl_csr_get_public_key($csr); > // print_r(openssl_pkey_get_details($publicKey)); > > // Create SOAP client: > $params = array( > Â Â Â Â Â Â'trace' => True, > Â Â Â Â Â Â'encoding' Â=> 'UTF-8', > Â Â Â Â Â Â'exception' => True); > $soapClient = new SoapClient("LegalUnitGet_20080401.wsdl", $params); > > $ns = 'http://...'; > > // Prepare SoapHeader parameters > $sh_param = array( > Â Â Â Â Â Â'PrivateKey' Â Â=> Â Â$privateKey, > Â Â Â Â Â Â'PublicKey' Â Â=> Â Â $publicKey); > $headers = new SoapHeader('http://...', 'Security', $sh_param); > > // Prepare Soap Client > $soapClient->__setSoapHeaders(array($headers)); > > // Setup the RemoteFunction parameters > $ap_param = array( > Â Â Â Â Â Â'LegalUnitIdentifier' Â Â => Â Â'xxxxxx', > Â Â Â Â Â Â'UserId' Â Â=> Â Â'xxxxx', > Â Â Â Â Â Â'Password' Â Â=> Â Â'xxxxx'); > > $info = $soapClient->__getFunctions(); > print_r($info); > > // Call Remote Function () > $error = 0; > try { > Â Â$info = $soapClient->__soapCall("getLegalUnit", array($ap_param)); > } catch (SoapFault $fault) { > Â Â$error = 1; > Â Âprint("Faultcode: ".$fault->faultcode)."\n"; > Â Âprint("Faultstring: ".$fault->faultstring); > } > > -- > > Finn > Is the file and line in the file you've shown? As you are using Soap faults, is it possible that this is a server side error coming across in the soap fault? -- 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