java axis调用php webservevice

WBOY
풀어 주다: 2016-06-23 14:30:27
원래의
1228명이 탐색했습니다.

php webservice

这里木有使用wsdl。

<?php$soap = new SoapServer(null,array('uri'=>"http://192.168.1.12/"));//This uri is your SERVER ip.                                              //Register the function//$soap->addFunction(SOAP_FUNCTIONS_ALL);$soap->addFunction('get_cpu_rate');   $soap->handle();function get_cpu_rate($host_ip,$cpu_limit_max,$cpu_limit_min){    $cpu_limit_max_per = $cpu_limit_max * 100; //    $cpu_limit_min_per = $cpu_limit_min * 100;     $conn= mysql_connect("localhost", "admin", "admin") or die("Could not connect: " . mysql_error());    mysql_select_db('mydb',$conn);    $sql="select status from host where hostname='".$host_ip."'";    $query=mysql_query($sql);    $host_msg=mysql_fetch_array($query);    if($host_msg['status']==3){    $host_status="上线";    $res=array();    $sh='/var/www/snmp_exec '.$host_ip;    exec($sh, $res, $rc);    if($rc==0){        $cpu_util=$res[4];    }    if ($cpu_util>=$cpu_limit_max_per){        //return $cpu_util-$cpu_limit_min_per;        return "CPU used ".$cpu_util."%is bigger than".$cpu_limit_max;    }     if ($cpu_util<=$cpu_limit_min_per){        //return $cpu_util-$cpu_limit_min_per;        return "CPU used ".$cpu_util."%is smaller than".$cpu_limit_min;    }    return $cpu_util.'%';    }else {    $host_status="下线";    return "down";    }   mysql_close($conn);}?>
로그인 후 복사

java 端使用 axis来调用。

package com.fei;import java.net.MalformedURLException;  import java.rmi.RemoteException;  import javax.xml.rpc.ServiceException;  import org.apache.axis.client.Call;  import org.apache.axis.client.Service;public class javasoapclient {    public static void main(String[] args) throws ServiceException, MalformedURLException, RemoteException {          String serviceUrl = "http://192.168.1.12/serverSoap.php";          Service service = new Service();          Call call = (Call) service.createCall();          call.setTargetEndpointAddress(new java.net.URL(serviceUrl));          call.setOperationName("get_cpu_rate");          String ip = "192.168.1.10";          double cpu_limit_max = 0.50;        double cpu_limit_min = 0.01;        String reVal = call.invoke(new Object[] {ip,cpu_limit_max,cpu_limit_min}).toString();          System.out.println(reVal);      }}
로그인 후 복사

可能用到的java 包

axis-ant.jar
axis.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
log4j-1.2.8.jar
saaj.jar
wsdl4j-1.5.1.jar

 

axis下载地址:http://www.apache.org/dist/ws/axis/1_4/

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿