Discussion:
no wsdl generated
deadguy
2009-07-31 01:43:42 UTC
Permalink
Hello all,

I've seen some very similar posts to my problem, but have not yet
found a solution for me. I'm trying to generate the wsdl for the
following sample from the php manual:

<?php

include "SCA/SCA.php";

/**
* Scaffold implementation for a remote StockQuote Web service.
*
* @service
* @binding.soap
*
*/
class StockQuote {

/**
* Get a stock quote for a given ticker symbol.
*
* @param string $ticker The ticker symbol.
* @return float The stock quote.
*/
function getQuote($ticker) {
return 80.9;
}
}
?>



I go to the correct location, with ?wsdl, but I get a blank page. No
error. I check my apache logs, and see no error, though it does
report the request in the access log. I have the sdo extension
loaded, and phpinfo() reports the SOAP extension is loaded. I'm
running the apache and php from ubuntu's 9.04 repo, and sca_sdo from
PECL. Any ideas why it's not working? Could there be some phantom
logs somewhere I don't see? Is there some way to see more logs?

thanks
Matt Brown
2009-07-31 17:14:00 UTC
Permalink
Finally able to get SCA logs going. I must it's ridiculous that doing
so isn't documented anywhere; you have to go through the log code to
figure it out.

For future reference:
SCA.php: SCA::initComponent() (line 128)
uncomment self::$logger->startLog();

SCA_Logger.php: SCA_Logger::startLog() (line 273)
uncomment trigger_error("SCA logging started; logging to $this->logfile");

For me, on ubuntu 9.04, it was logging to /tmp/log/SCA.log

Anyway, once I managed to get some logs, I got the following:

Finally able to get SCA logs going. I must it's ridiculous that doing
so isn't documented anywhere; you have to go through the log code to
figure it out.

For future reference:
SCA.php: SCA::initComponent() (line 128)
uncomment self::$logger->startLog();

SCA_Logger.php: SCA_Logger::startLog() (line 273)
uncomment trigger_error("SCA logging started; logging to $this->logfile");

For me, on ubuntu 9.04, it was logging to /tmp/log/SCA.log

Anyway, once I managed to get some logs, I got the following:

[ 1] Info 31/07/2009 16:12:38::550 ....SCA::initComponent - Entering
[ 2] Info 31/07/2009 16:12:38::550 ....SCA::initComponent - Called
from /var/www/temp/sca2.php
[ 3] Info 31/07/2009 16:12:38::550 ....SCA::initComponent -
$_SERVER['HTTP_HOST'] = localhost
[ 4] Info 31/07/2009 16:12:38::550 ....SCA::initComponent -
$_SERVER['REQUEST_METHOD'] = GET
[ 5] Info 31/07/2009 16:12:38::550 ....SCA::initComponent -
$_SERVER['PHP_SELF'] = /temp/sca2.php
[ 6] Info 31/07/2009 16:12:38::550 ....SCA::initComponent -
$_SERVER['REQUEST_URI'] = /temp/sca2.php?wsdl
[ 7] Info 31/07/2009 16:12:38::550 ....SCA::initComponent - $_GET['wsdl'] =
[ 8] Info 31/07/2009 16:12:38::551 ....SCA::initComponent - included
by a client script that is not a component

After digging through the code some more, it turns out SCA didn't
recognize my script because the file name didn't match the name of the
@service class. So renaming sca2.php to StockQuote.php got me going.
PHP Version 5.2.6-3ubuntu4.1
soap
Soap Client enabled
Soap Server enabled
Directive Local Value Master Value
soap.wsdl_cache 1 1
soap.wsdl_cache_dir /tmp /tmp
soap.wsdl_cache_enabled 0 1
soap.wsdl_cache_limit 5 5
soap.wsdl_cache_ttl 86400 86400
I changed the PHP log setting to E_ALL. Still no messages.
Any ideas?
thanks
Post by deadguy
Hello all,
I've seen some very similar posts to my problem, but have not yet
found a solution for me. I'm trying to generate the wsdl for the
<?php
include "SCA/SCA.php";
/**
* Scaffold implementation for a remote StockQuote Web service.
*
*
*/
class StockQuote {
/**
* Get a stock quote for a given ticker symbol.
*
*/
function getQuote($ticker) {
return 80.9;
}
}
?>
I go to the correct location, with ?wsdl, but I get a blank page. No
error. I check my apache logs, and see no error, though it does
report the request in the access log. I have the sdo extension
loaded, and phpinfo() reports the SOAP extension is loaded. I'm
running the apache and php from ubuntu's 9.04 repo, and sca_sdo from
PECL. Any ideas why it's not working? Could there be some phantom
logs somewhere I don't see? Is there some way to see more logs?
thanks
Matt Brown
2009-07-31 16:22:20 UTC
Permalink
PHP Version 5.2.6-3ubuntu4.1

soap

Soap Client enabled
Soap Server enabled

Directive Local Value Master Value
soap.wsdl_cache 1 1
soap.wsdl_cache_dir /tmp /tmp
soap.wsdl_cache_enabled 0 1
soap.wsdl_cache_limit 5 5
soap.wsdl_cache_ttl 86400 86400

I changed the PHP log setting to E_ALL. Still no messages.

Any ideas?

thanks
Post by deadguy
Hello all,
I've seen some very similar posts to my problem, but have not yet
found a solution for me.  I'm trying to generate the wsdl for the
<?php
include "SCA/SCA.php";
/**
 * Scaffold implementation for a remote StockQuote Web service.
 *
 *
 */
class StockQuote {
   /**
    * Get a stock quote for a given ticker symbol.
    *
    */
   function getQuote($ticker) {
       return 80.9;
 }
}
?>
I go to the correct location, with ?wsdl, but I get a blank page.  No
error.  I check my apache logs, and see no error, though it does
report the request in the access log.  I have the sdo extension
loaded, and phpinfo() reports the SOAP extension is loaded.  I'm
running the apache and php from ubuntu's 9.04 repo, and sca_sdo from
PECL.  Any ideas why it's not working?  Could there be some phantom
logs somewhere I don't see?  Is there some way to see more logs?
thanks
Loading...