泰仔在線

          java學(xué)習(xí),心情日記,繽紛時(shí)刻
          posts - 100, comments - 34, trackbacks - 0, articles - 0

          這篇帖子是對《使用Axis發(fā)布簡單的Web服務(wù)》的補(bǔ)充。

          可以看出,在Axis里書寫deploy.wsdd并利用org.apache.axis.client.AdminClient發(fā)布,其主要工作就是把<service>標(biāo)簽中的內(nèi)容添加在server-config.wsdd里,所以一般直接編輯server-config.wsdd文件會更方便一些。不過當(dāng)你還沒有server-config.wsdd文件時(shí),使用deploy.wsdd的方法會更方便些,因?yàn)锳dminClient會幫你生成一些額外的xml元素(<handler>等等),而這些元素是必要的。

          服務(wù)發(fā)布以后,就可以在IE瀏覽器里看到它的WSDL,一般是服務(wù)的URL后面加一個(gè)“?wsdl”,例如添加圖書的WSDL可以通過http://localhost:8080/bookstore/services/BookSvc?wsdl看到。至于Java類是以何種規(guī)則映射到WSDL的,請參考JAX-RPC規(guī)范;WSDL本身的說明見這里;為了搞清生成的WSDL中各種URL格式的名稱空間,最好對XML Schema有所了解,我覺得這篇文章還不錯(cuò)。

          我們還可以通過IE瀏覽器直接調(diào)用服務(wù),方法是在服務(wù)URL后加“method=xxx”,其中xxx是要調(diào)用的方法名稱。例如可以通過http://localhost:8080/bookstore/services/BookSvc?method=addBook調(diào)用添加圖書方法,按照我們的服務(wù)類,在Tomcat的控制臺上應(yīng)該可以看到打出了“Book has been added.”的字樣。

          因?yàn)樘砑訄D書方法的參數(shù)是一個(gè)自定義類型,所以在IE里調(diào)用時(shí)不能指定參數(shù)值(或者是可以以其他格式指定,但我還不知道);如果參數(shù)是簡單類型,就可以指定了。例如我們可以為BookSvc增加一個(gè)echo()方法,參數(shù)是一個(gè)java.lang.String類型的值,如下所示,然后重新編譯并啟動Tomcat(server-config.wsdd文件不必更改)。

          public   void  echo(String str) {
              System.out.println(
          " Hello  " + str);
          }

          在IE里輸入http://localhost:8080/bookstore/services/BookSvc?method=echo&str=Mike,就會看到Tomcat的控制臺里打出了“Hello Mike”。如果有多個(gè)參數(shù),只要把這些參數(shù)都列在URL里即可。

          相關(guān)鏈接:
          使用Axis發(fā)布簡單的Web服務(wù)

          主站蜘蛛池模板: 曲沃县| 武平县| 平陆县| 洛宁县| 龙游县| 灵台县| 上思县| 宜宾市| 五原县| 桦甸市| 泗水县| 英山县| 监利县| 台山市| 灵川县| 桑植县| 孝昌县| 静安区| 肇东市| 新河县| 酒泉市| 三门峡市| 鄂州市| 双城市| 天柱县| 民权县| 论坛| 秭归县| 综艺| 南城县| 黄陵县| 镇平县| 彰化市| 崇义县| 从化市| 策勒县| 宁晋县| 阳高县| 博爱县| 洪湖市| 阳朔县|