测试工具:wsCaller.jar (此文是给java程序调用的webservice)
提示:要运行wsCaller.jar 要选安装jdk 如果没有安装jdk 则wsCaller.jar 会以压缩包的形式显示
1 写webservice 要用到的接口
01 |
<?PHP |
02 |
class service
|
03 |
{ |
04 |
function add( $a , $b ){
|
05 |
$c = $a + $b ;
|
06 |
return $c ;
|
07 |
}
|
08 |
function str( $string ){
|
09 |
return $string ;
|
10 |
}
|
11 |
} |
12 |
|
14 |
//$db = new cls_MysqL('localhost','root',test_db'); |
15 |
//$db = new cls_MysqL('211.103.156.227:3306','txtx',test_db'); |
17 |
$server = new SoapServer( 'testwsdl.wsdl' , array ( 'uri' => 'http://webserver.com/' , 'encoding' => 'utf-8' , 'soap_version' => SOAP_1_2 ));
|
18 |
$server ->setClass( "service" );
|
19 |
$server ->handle();
|
20 |
?> |
菜单中
File--àExport---àPHP 选中 “wsdl file” 然后下一步 (图1)
File name 是wsdl 文件所在的位置
Exported files 下面的文件是你上面刚刚创建的PHP文件(接口文件)
Classes 下面的service 前面的勾要打上
URL 中填写接口文件的访问地址 (如:http://webserver.com/rpcservice.php)
点击global settings 出现下图(图3)
选择RPC – Oriented
然后点击 “ok” 在点击 “Finish”
出现下图(图4)
最后一步就是给 每个参数一个合理的类型(下图)
然后保存
访问路径 http://webserver.com/testwsdl.wsdl (会出现下面内容)
如果不出现 则要配置apache 使其支持xml
注: 不要用chrome 打开wsdl文件 ,可能会显示不正常 (可以用ie firfox)
测试是否可以成功调用
测试工具
wsCaller.jar
注:必需安装JDK 才能运行wsCaller.jar 请不要解压wsCaller.jar
如果不能正确返回信息 可直接访问你的PHP 看看会不会报错
(本例http://webserver.com/rpcservice.php)
extension=PHP_soap.dll (添加 如果存在则去掉注释)
重启一下apache
apache 要注意这个文件 mime.types
找到message name=”函数名” 中直接复制一下并把参数改一下参数名
WSDL文件
1 |
function add( $a , $b , $e ){
|
2 |
$c = $a + $b + $e ;
|
3 |
return $c ;
|
4 |
} |
注:$e 就是wsdl文件中的 c 参数
WSDL复制代码就行; PHP写出对应的函数 (看一下选中的部分 其实就是复制了一下add 这个函数 并且直接粘贴在它下面就可以) 下面以添加add_bak 函数为例
WSDL
1.复制message 标签
2.复制 portType 中的标签
1 |
function add_bak( $a , $e ){
|
2 |
$c = $a + $b - $e ;
|
3 |
return $c ;
|
4 |
} |
测试结果
add_bak 函数
add 函数
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。