PHP上WSDL请求的分段错误

时间:2012-04-23 14:56:01

标签: php soap wsdl wso2 wsh

我已经基于ws2模式的wso2框架样本创建了这个简单的例子。

    <?php

try {

    $client = new WSClient(array("wsdl"=>"http://footballpool.dataaccess.eu/data/info.wso?wsdl",
                                 ));

    $proxy = $client->getProxy();   

    $result = $proxy->TopGoalScorers(array('iTopN'=>1));

    echo "TEST!!!<br />";

    echo '<pre>';
    print_r($result);
    echo '</pre>';

} catch (Exception $e) {

        echo "Message = ".$e->getMessage();
}
?>

如果我在Web浏览器中执行此脚本,则会出现http 324错误ERR_EMPTY_RESPONSE 当我在shell中执行它似乎工作但最后我得到一个分段错误错误。

使用示例文件wsdl_11_client.php

将重现相同的错误

如果这一行

$result = $proxy->TopGoalScorers(array('iTopN'=>1));

注释不会出现分段错误错误。

我正在使用php版本2.1.0的wsf wso2框架 libxml版本2.7.8 libxslt版本1.1.26 PHP版本5.3.6-13ubuntu3.6 Ubuntu 11.10。

在我的php.ini中,我添加了

include_path = ".:/usr/share/php:/usr/lib/php5/20090626/wsf_c/scripts"

[wsf]
wsf.home="/usr/lib/php5/20090626/wsf_c"
;log_level2 shows warnings and errors
;wsf.log_level=2 
;wsf.log_path="/var/log/wsf"

我在/etc/php5/conf.d/wsf.ini中添加了这个扩展名

; configuration for php WSF module
extension=wsf.so

我的服务器是否配置错误?或者我的PHP脚本中有一些错误? 提前致谢。 弗朗西斯。

1 个答案:

答案 0 :(得分:0)

对我而言。

考虑到“WSO2 WSF for PHP”项目没有活动,我想最好不要在生产中使用它。

最好的解决方法可能是编写与原始服务通信的Java代理服务,并将类似JSON的内容返回给PHP。