PHP调用JAVA的WebService简单实例
使用PHP调用JAVA语言开发的WebService。
客户端提交两个String类型的参数,服务端返回一个对象类型。
服务端使用AXIS-1.4作为SOAP引擎。客户端为PHP5.2.9,使用NuSOAP作为SOAP引擎。
服务端
对象类
importjava.io.Serializable;
publicclassPersonimplementsSerializable{
/**
*
*/
privatestaticfinallongserialVersionUID=-410186774891162281L;
privateStringusername;
privateintage;
privatebooleansex;//true:male;false:female
publicStringgetUsername(){
returnusername;
}
publicvoidsetUsername(Stringusername){
this.username=username;
}
publicintgetAge(){
returnage;
}
publicvoidsetAge(intage){
this.age=age;
}
publicbooleangetSex(){
returnsex;
}
publicvoidsetSex(booleansex){
this.sex=sex;
}
}
服务类
publicclassUserLogin{
publicPersonlogin(StringloginName,StringloginPasswd){
PersonaPerson=newPerson();
if(loginName.equals("laoli")&&loginPasswd.equals("111111")){
aPerson.setUsername("老李");
aPerson.setAge(55);
aPerson.setSex(true);
}elseif(loginName.equals("xiaoli")&&loginPasswd.equals("123456")){
aPerson.setUsername("小丽");
aPerson.setAge(23);
aPerson.setSex(false);
}else{
aPerson=null;
}
returnaPerson;
}
}
客户端
<?php
/*
*Createdon2011-10-12
*Authorwanghao
*
*package_name/userLoginClient.php
*/
header("Content-Type:text/html;charset=utf-8");
//PullintheNuSOAPcode
require_once("libs/nusoap.php");
//Createtheclientinstance
$client=newnusoapclient("http://localhost:8080/axis/services/UserLoginWS?wsdl",true);
$client->soap_defencoding="utf-8";
$client->decode_utf8=false;
$client->xml_encoding="utf-8";
//Checkforanerror
$err=$client->getError();
if($err){
//Displaytheerror
echo"<h2>Constructorerror</h2><pre>".$err."</pre>";
//Atthispoint,youknowthecallthatfollowswillfail
}
//CalltheSOAPmethod
$param=array("loginName"=>"laoli","loginPasswd"=>"111111");
$result=$client->call("login",$param);
//Checkforafault
if($client->fault){
echo"<h2>Fault</h2><pre>";
print_r($result);
echo"</pre>";
}else{
//Checkforerrors
$err=$client->getError();
if($err){
//Displaytheerror
echo"<h2>Error</h2><pre>".$err."</pre>";
}else{
//Displaytheresult
echo"<h2>Result</h2><pre>";
print_r($result);
echo"</pre>";
}
}
echo"<br>";
$param=array("loginName"=>"xiaoli","loginPasswd"=>"123456");
$result=$client->call("login",$param);
//Checkforafault
if($client->fault){
echo"<h2>Fault</h2><pre>";
print_r($result);
echo"</pre>";
}else{
//Checkforerrors
$err=$client->getError();
if($err){
//Displaytheerror
echo"<h2>Error</h2><pre>".$err."</pre>";
}else{
//Displaytheresult
echo"<h2>Result</h2><pre>";
print_r($result);
echo"</pre>";
}
}
?>
相关文章
- 怎么用命令提示符运行JAVA代码_java命令提示符如何进入
- 在java中print和println_JAVA命令行参数
- java打印数组_Java中打印数组的三种方式
- MySQL字段类型如何转为java_Java JDBC中,MySQL字段类型到JAVA类型的转换
- java控制台输入数组_Java控制台输入数组并逆序输出的方法实例
- java 文件上传到服务器_Java上传文件到服务器端的方法「建议收藏」
- 观察者模式——Java实例
- 基于jsp和基于web的区别_java发送短信
- java 缓存工具类初始化_Java缓存框架
- java高级编程——网络编程(解析网页中的内容)
- Java学习笔记之七java函数的语法规则总结详解编程语言
- Java中HashTable和ConcurrentHashMap的区别详解编程语言
- Java枚举开发实例详解编程语言
- Linux下 Java JDK的下载与安装(jdklinux下载)
- 2021 年学习 Java 的三个理由
- PHP操纵Redis实例:快速高效存储数据(php操作redis实例)
- Java面试中的Redis题目剖析(java面试题redis)
- 使用PHP连接MSSQL数据库的实例示范(php连接mssql例子)
- Java应用在Linux上乱码的原因及解决方法(java linux乱码)
- Oracle收购了Java一个伟大的转折点(java被oracle吗)
- 学习Java编程,攻克Oracle难题(java学oracle)
- Java技术将数据写入Oracle数据库(java写入oracle)
- 用PHP实现Redis缓存一个实例(redis缓存实例php)