日期:2014-05-17 浏览次数:20402 次
折腾了一个上午,PHP SCA的居然连helloworld也出不来,在单位的VISITA上,百思不得其解,于是晚上回家
在WIN2003上,用同样的APACHE版本,PHP 用5.2.1,居然完成成功,下面记录过程,毕竟这方面资料国内很少。
?
?
1 先安装pear
?? 在你的PHP目录下,输入go-pear,然后基本按回车,就完成安装了
?
2 用PECL安装SCA-SDO,因为这样很方便了
?? 输入pecl install -B SCA_SDO ,之后会自动下载
SCA-SDO的相关库文件,会放在你的pear目录下的
?
3 还要下载一个php_sdo.sll文件,然后在
php.ini中加入?extension=php_sdo.dll
4 把pear\sca\examples\下的随便一个例子放到你运行PHP的目录下,就可以运行了,
5 咱们来helloworld
?
include 'SCA/SCA.php';
/**
?* @service
?* @binding.soap
?*/
class Greeting
{
??? /**
????? * @param string $name
????? * @return string
????? */???
??? public function greet($name)
??? {
??????? return 'hello ' . $name;
??? }
}
?>
?
这里用了标签,之后IE浏览http://localhost:8082/myphp/Greeting.php?wsdl
就可以看到WSDL了
使用之:
?
include 'SCA/SCA.php';
$greeting_service? = SCA::getService('http://localhost:8082/myphp5/helloworldscawsservice/Greeting.php?wsdl');
$name????????????? = "jackyrong";
$greeting????????? = $greeting_service->greet($name);
echo "Name: " . $name . "<br/>";
?
之后就可以使用了,第一个HELLOWOLRD出来了.
注意,我在visita上运行是出错的,在win2003上运行正确,哎,可恶的visita
参考资料:
http://www.osoa.org/display/PHP/SCA+with+PHP
http://www.ibm.com/developerworks/webservices/library/ws-soa-scasdo/