国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php中nusoap調用java axis2發布的webservice

2024-05-04 21:48:21
字體:
來源:轉載
供稿:網友

調用webservice:開發環境是:Eclipse3.6 (java IDE)+ JDK 1.6 + Tomcat 7.0 + Axis2 1.6 + php 5.2.14 (IDE為eclipse-php-helios-SR1-win32.zip)+ apache2.2.15,這些軟件隨時都在更新,請讀者谷歌百度一下到官網下載。

一、在java端編寫服務,并利用axis2發布成服務,本文的服務名為sayHi,里面有一個函數sayHello(),代碼如下:

  1. package Hi; 
  2. publicclass sayHi { 
  3.   public String sayHello(String user,String info) { 
  4.     return"Hello, My Friend "+ user + info; 
  5.   } 

二、編寫php客戶端,調用axis2發布的webservice

2.1 下載nusoap.rar,將解壓出來的lib文件夾添加到工程

2.2 編寫客戶端php,內容如下,代碼如下:

  1. <?php 
  2. require_once ("./lib/nusoap.php"); 
  3. // 要訪問的webservice路徑 
  4. $NusoapWSDL="http://localhost:8080/axis2/services/sayHi?wsdl"
  5. // 生成客戶端對象 
  6. $client = new nusoap_client($NusoapWSDL); 
  7. //$client->soap_defencoding    =    'UTF-8';    
  8. //$client->decode_utf8    =    false; 
  9. // 設置參數(注意:PHP只能以'數組集'方式傳遞參數) 
  10. $param = array'user' => '國假不旅游 '
  11. 'info' => ' Welcome to my home!'); 
  12. // 調用遠程方法 'sayHello'為服務中的方法名 
  13. //'http://Hi'為wsdl文件中targetNamespace的值 
  14. $result = $client->call('sayHello'$param,'http://Hi'); 
  15. // 顯示執行結果 
  16. if (!$err=$client->getError()){ 
  17. //開源代碼Vevb.com 
  18. echo $result;     
  19. }else{   
  20. echo $err;   
  21. }   
  22. ?> 

三、執行結果為:

Hello,My Friend 國假不旅游 Welcome to my home!

webservice亂碼問題:

許多使用NuSoap 調用.NET WebService或J2EE WebService的朋友可能都遇到過中文亂碼問題(我用的是PHP調用NuSoap),下面介紹這一問題的出現的原因和相應的解決方法。

NuSoap調用WebService出現亂碼的原因:

通常我們進行WebService開發時都是用的UTF-8編碼,這時我們需要設置:

$client->soap_defencoding = ‘utf-8′;

同時,需要讓xml以同樣的編碼方式傳遞:$client->xml_encoding = ‘utf-8′;

至此應該是一切正常了才對,但是我們在輸出結果的時候,卻發現返回的是亂碼.

NuSoap調用WebService出現亂碼的解決方法:

實際上,開啟了調試功能的朋友,相信會發現$client->response返回的是正確的結果,為什么$result = $client->call($action, array(‘parameters’ => $param)); 卻是亂碼呢?

研究過NuSoap代碼后我們會發現,當xml_encoding設置為UTF-8時,NuSoap會檢測decode_utf8的設置,如果為true,會執行 PHP 里面的utf8_decode函數,而NuSoap默認為true,因此,我們需要設置.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 将乐县| 洱源县| 平乡县| 内江市| 曲阳县| 三明市| 涞源县| 鹤壁市| 镶黄旗| 衡阳县| 宜昌市| 綦江县| 萍乡市| 襄垣县| 健康| 昌黎县| 宝山区| 陈巴尔虎旗| 奎屯市| 广安市| 宁陵县| 清苑县| 阜南县| 海晏县| 微山县| 两当县| 满洲里市| 常山县| 启东市| 怀宁县| 连州市| 准格尔旗| 呼伦贝尔市| 泾川县| 绥江县| 平乡县| 集安市| 佳木斯市| 禄丰县| 思南县| 时尚|