1. 程式人生 > >WebService學習筆記系列之三----通過javax.xml.ws.Service的方式呼叫WebService

WebService學習筆記系列之三----通過javax.xml.ws.Service的方式呼叫WebService

    在上一篇《WebService學習筆記系列之二----通過wsimport的方式呼叫WebService》文章中講解了通過wsimport的方式呼叫WebService。本文章學習使用javax.xml.ws.Service類來呼叫WebService。下面貼出呼叫的程式碼

import java.net.MalformedURLException;
import java.net.URL;

import javax.xml.namespace.QName;

import com.opertion.wsimport.HiService;

/**
 * 使用Service類進行呼叫
 * @author Administrator
 */
public class Service {
	public static void main(String[] args) throws MalformedURLException {
		//wsdl網路路徑
		URL url = new URL("http://localhost:8090/hi/sayHi?wsdl");
		//服務描述中服務端點的限定名稱  兩個引數分別為 名稱空間 服務名
		QName qName = new QName("http://com.sc.ws", "HiService");
		//建立服務物件
		javax.xml.ws.Service service = javax.xml.ws.Service.create(url, qName);
		//獲得Hiservice的實現類物件 
		HiService hiService = service.getPort(new QName("http://com.sc.ws","HiServicePort"),HiService.class);
		//呼叫WebService方法
		System.out.println(hiService.sayHi("xiaoming"));
	}
}

    在上述中的名稱空間、服務名等是從哪裡得到的呢?下面貼出一張圖說明:

    

    圖中1為名稱空間、2為限定名的本地部分 3為服務埠 

    需要注意的是在上述的呼叫WebService過程中存在一個HiService介面。Hiservice介面是怎麼來的呢?其實它還是通過wsimport的方法生成處理來的。在使用wsimport方式的時候會生成一個服務介面類,在這次的呼叫中需要使用到它。

    其實通過wsimport方式和上述的方式本質是完全一樣的。wsimport就是封裝過上述的呼叫方式。


相關推薦

WebService學習筆記系列----通過javax.xml.ws.Service方式呼叫WebService

    在上一篇《WebService學習筆記系列之二----通過wsimport的方式呼叫WebService》文章中講解了通過wsimport的方式呼叫WebService。本文章學習使用javax.xml.ws.Service類來呼叫WebService。下面貼出呼叫

Python學習筆記系列002:變量 註釋 輸入 輸出

練習題 命名 outer 計算機 鍵盤 -a 考題 onerror rac 導讀: 1.變量 2.字符編碼 3.註釋 4.輸出 5.輸入 6.縮進 7.報錯單詞釋義 8.代碼規範 基礎語法是任何語言的基礎,只有熟練掌握,才能靈活用語言,寫出高效、優美、簡潔的代碼。 Py

Struts2學習筆記系列引數接收

1.前言 俗話說“打鐵要趁熱”,趁著自己的勁頭還未消失,關於struts2又學了一點點(囧),就再寫一篇部落格吧,就當鞏固自己剛學的這一點點知識了。 2.struts2結果跳轉方式 方式1:轉發 <result name="success" type=

Struts2學習筆記系列環境搭建

1.前言 一直在學習javaweb方面的知識,斷斷續續的學到了struts2,深感java框架的博大精深,自己的水平有限(菜雞),本著好記性不如爛筆頭的原則,打算把自己學到的東西寫一篇部落格,就當複習以及以後查詢的筆記資料了。 2.環境搭建 1.建立一個web工程

小白的機器學習筆記系列 四-邏輯迴歸

一個概率問題 前面我們講了線性分類和線性迴歸,這裡讓我們來思考另外一類問題——求概率問題。 比如說,我們根據一個人的既往病歷,生活習慣,年齡等來判斷一個人是否會得心肌梗塞。我們想要的答案不僅僅是一個簡單的是或否,實際上我們希望知道的是得心肌梗塞的風險有多大。醫生

Netty4.0學習筆記系列五:自定義通訊協議

實現的原理是通過Encoder把java物件轉換成ByteBuf流進行傳輸,通過Decoder把ByteBuf轉換成java物件進行處理,處理邏輯如下圖所示: 傳輸的Java bean為Person: package com.guowl.testobjcoder

【OpenCV學習筆記:Mat初始建立方法----要求資料連續儲存

int rows=15; // int cols=40; int size=rows*cols; vector<int>Va(size); vector<Vec<int, 8>>Vb(size); vector<Vec4i>V

Axis2學習筆記(二)通過services.xml釋出ws服務

第一步 建立一個pojo類 package com.service; public class SimpleService { public String getGreeting(String name){ return "Hello,"+name+"service.xml

大數據學習系列 ----- HBase Java Api 圖文詳解

工具 itl 進行 圖片 置配 動態數據 sync ase tac 引言 在上一篇中大數據學習系列之二 ----- HBase環境搭建(單機) 中,成功搭建了Hadoop+HBase的環境,本文則主要講述使用Java 對HBase的一些操作。 一、事前準備 1.確認hado

webservice學習筆記(十四):通過註解修改wsdl文件(簡單概括)

1.通過註解修改wsdl文件的屬性值,為了不讓客戶端看到服務端相應的真正的屬性, 注意:即使沒有修改原始碼,只是修改了註解,我們的客戶端程式碼也要重新生成,否則會呼叫失敗 2.JDK中的相關注解: [email protected] -作用在具體類上,而不是介面 -一個

webservice學習筆記():使用jdk開發Web Service

開發Web Service有兩種方式: 1.使用JDK開發(至少1.6或以上) 2.使用CXF框架開發(工作中) 組成: 1.伺服器端 2.客戶端   使用jdk開發Web Service 1.開發伺服器端 a.Web Service編碼: [ema

JavaScript高階程式設計第學習筆記(一)資料型別區分詳談

  null、NaN、undefined三者的區別是什麼?   在初次接觸到JavaScript的時候,傻傻的分不清null、NaN、undefined三者到底區別何在,在實際的專案開發中也因為這個問題而困惑久矣。針對這個問題,我特意查找了多方資料,在筆記本上做了詳細的分析記錄,但是由於紙質資料不便於攜帶、

深度學習入門筆記系列)——感知器模型和 tensorboard 的使用方法

本系列將分為 8 篇 。今天是第三篇 。主要講講感知器模型和 tensorboard 的基本使用方法 。 1. 感知器模型 因為小詹之前寫過一篇感知器模型的介紹 ,這裡就不贅述了 。有需要鞏固的點選如下連結跳轉即可 : 2. tensorboard Tenso

【NLP學習筆記】()gensim使用相似性查詢(Similarity Queries)

相似性查詢(Similarity Queries) 本文主要翻譯自https://radimrehurek.com/gensim/tut3.html在之前的教程語料和向量空間和主題和轉換中,我們學會了如何在向量空間模型中表示語料和如何在不同的向量空間之間轉換。實際工作中,這樣做的一個最常見的目的是比較兩個文

【Java進階面試系列】哥們,訊息中介軟體在你們專案裡是如何落地的?【石杉的架構筆記

歡迎關注個人公眾號:石杉的架構筆記(ID:shishan100) 週一至週五早8點半!精品技術文章準時送上! 一、前情回顧 之前給大家聊了一下,面試時如果遇到訊息中介軟體這個話題,面試官上來可能問的兩個問題: 你們的系統架構中為什麼要引入訊息中介軟體? 系統架構中引入訊息中介軟體有什麼缺點? 關於

Spring原理學習系列:Spring AOP原理(從原始碼層面分析)-------上部

引言 本文是Spring原理分析的第三篇博文,主要闡述Spring AOP相關概念,同時從原始碼層面分析AOP實現原理。對於AOP原理的理解有利於加深對Spring框架的深入理解。同時我也希望可以探究Spring框架在處理AOP的解決思路,學習框架的時候,有時候

linux shell指令碼攻略 學習筆記3 -- 第章 以檔案

第三章主要跟檔案的處理相關,小結各節內容如下: 1,簡介 概念:Unix將系統中的一切都視為檔案;如普通檔案、目錄、終端、符號連結、命名管道等等,都是一種檔案; 2, 生成測試用的檔案 1)某些時候,需要製作一些測試用的檔案,我們不用單獨寫程式去生成,可以直接採用現有的

[工作筆記] 通過adb檢視android手機CPU和記憶體佔用情況

      最近邱同學讓我整理一下快看測試的效能指標,問了一下老大,他跟我說了響應時間、資源利用率和吞吐量這些。這裡先了解一下手機的CPU和記憶體的檢視方法,不過測試效能裡的資源利用率好像說的是伺服器端的,不知道有沒有搞錯。先記錄一下手機端的吧。 1. 開啟DOS視窗,進入

Linux 學習一 搭建環境系列 linux搭建django 以及搭建django時遇到的各種問題

防火牆的方法為:一、service方式檢視防火牆狀態:[[email protected] ~]# service iptables statusiptables:未執行防火牆。開啟防火牆:[[email protected] ~]# service iptables start關閉防火牆

HEVC學習(五) —— 幀內預測系列

今天主要介紹幀內預測一個很重要的函式initAdiPattern,它的主要功能有三個,(1)檢測當前PU的相鄰樣點包括左上、上、右上、左、左下鄰域樣點值的可用性,或者說檢查這些點是否存在;(2)參考樣點的替換過程,主要實現的是JCTVC-J1003即draft 8.4.4.