當前位置:首頁 » 網頁前端 » web服務元數據
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

web服務元數據

發布時間: 2022-05-25 02:16:50

① 使用webservice必需要用maven嗎

目前主要的java webservice框架剩下了axis2和cxf。本文對兩個框架的目標、標准支持、開發和部署等方面進行了簡單的對比。對於在現有web應用中發布webservice,本文建議使用cxf。 更進一步,本文介紹了cxf的嵌入式代碼和web容器兩種發布方式。

本文中的例子使用maven進行構建。

Table of Contents
1 對比Axis2和CXF
2 編寫服務類
3 以endpoint發布
4 在webapp中發布
1 對比Axis2和CXF
jws的發布對java webservice框架產生了巨大的影響,經過大浪淘沙,目前java開發webservice的框架主要包括axis2和cxf。

axis2和cxf都是apache旗下的產品,但是其目的不同,導致webservice開發方法也不一樣。兩個框架都得到了開發者的支持。有必要對二者進行以下對比。


Axis2 CXF
目標 WebService引擎 簡易的SOA框架,可以作為ESB
ws* 標准支持 不支持WS-Policy WS-Addressing,WS-Policy, WS-RM, WS-Security,WS-I Basic Profile
數據綁定支持 XMLBeans、JiBX、JaxMe 、JaxBRI、ADB JAXB, Aegis, XMLBeans, SDO, JiBX
spring集成 不支持 支持
應用集成 困難 簡單
多語言 支持C/C++ 不支持
部署 web應用 嵌入式
服務監控和管理 支持 不支持
結論:

如果希望以一種一致的方式實現webservice,特別是有跨語言的需求時,應該使用Axis2
如果需要在現有的java程序(包括web應用)中增加webservice支持,應該使用CXF
2 編寫服務類
從Java6開始,WebService API從Java EE復制到了Java SE。並遵循了一系列的標准,比如JSR181(Web Service 元數據),JSR224(JAX-WS,基於XML的WebService API),JSR67(SAAJ,SOAP附件標准)等。 並分別定義到javax.jws, javax.xml.ws 和 javax.xml.soap包中。

JSR181支持使用標注(annotation)來定義WebService。在javax.jws中主要的標注類包括:


標注 說明
WebService 將 Java 類標記為實現 Web Service,或者將 Java 介面標記為定義 Web Service 介面
WebMethod 定製Web Service方法
WebParam 定製Web Service方法的參數
WebResult 定製Web Service方法的返回值
SOAPBinding 指定WebService的SOAP映射樣式
使用標注可以在不改變代碼邏輯的前提下讓外部代碼能夠獲得更多的元數據。下面就用javax.jws定義的標注來聲明一個WebService:

創建maven工程
mvn archetype:create -DgroupId=com.mycompany -DartifactId=cxfdemo -DarchetypeArtifactId=maven-archetype-webapp


增加CXF依賴
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>apache-cxf</artifactId>
<version>${cxf.version}</version>
<type>pom</type>
</dependency>
配置jetty插件
復制代碼
<build>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
</plugin>
</plugins>
</build>
復制代碼


創建服務介面
復制代碼
package cxfdemo;

import javax.jws.WebService;

@WebService
public interface CXFDemo {
public String sayHello(String foo);
}
復制代碼
實現服務類
復制代碼
package cxfdemo;
import javax.jws.WebService;

@WebService()
public class CXFDemoImpl implements CXFDemo {

public String sayHello(String foo) {
return "hello "+foo;
}

}
復制代碼

② web服務是什麼

回答和翻譯如下:
網路。
Web.

③ web站點和web服務是什麼意思

Web站點就是我們平時所做的網站Web服務(Web Service)是基於XML和HTTPS的一種服務,其通信協議主要基於SOAP,服務的描述通過WSDL,通過UDDI來發現和獲得服務的元數據

④ 什麼是web服務它的優點是什麼

微軟為Web服務下的定義是通過標準的Web協議可編程訪問的Web組件。「軟體就是服務」,這已經是軟體發展的一個潮流了。未來的軟體廠商就象現在的電信公司一樣,用戶可以按照時間來租用軟體公司的服務。「Web服務」(Web Services)可以說是整個.NET計劃的核心,簡單的說,Web服務就是一種遠程訪問的標准。它的優點首先是跨平台,HTTP和SOAP等已經是互聯網上通用的協議;其次是可以解決防火牆的問題,如果使用DCOM或CORBA來訪問Web組建,將會被擋在防火牆外面,而使用SOAP則不會有防火牆的問題。要發展Web 服務需要更多的軟體廠商來開發Web服務,讓基於Web服務的軟體服務多起來。 這一切,是通過將緊密耦合的、高效的n層計算技術與面向消息的、鬆散耦合的Web概念相結合來實現的。我們將這種計算風格稱為Web服務,它的出現標志著人類已經邁入應用程序開發技術的新紀元。Web服務是一種應用程序,它可以使用標準的互聯網協議,像超文本傳輸協議(HTTP)和XML,將功能綱領性地體現在互聯網和企業內部網上。可將Web服務視作Web上的組件編程。從理論上講,開發人員可通過調用Web應用編程介面(API)(就像調用本地服務一樣),將Web服務集成到應用程序中,不同的是Web API調用可通過互聯網發送給位於遠程系統中的某一服務。 Sun:Web服務是互聯網 架構中可置換的標准零部件 Sun公司董事長、首席執行官Scott McNealy在Sun ONE發布會上說,「智能化Web服務對信息時代有著重大的意義,它的作用就象那些可置換的標准零部件在工業時代所起到的關鍵作用一樣。」 Web服務適用於任何類型的Web環境,無論是在互聯網、Intranet還是在Extranet,重點是在企業對消費者、企業對企業之間的通信。Web服務消費者可以是通過台式或是無線接入服務的個人,也可以是應用程序,還可以是另一個Web服務。Web服務應該具有以下的一些特點:Web服務可以通過Web接入進行訪問;Web服務提供一個XML介面;Web服務使XML信息,通過標准Web協議實現通信。Web服務支持系統間的鬆散耦合連接。 為了能夠讓Web服務具備智能化,它必須能夠識別出接受服務的消費者的身份、與消費者相關的安全方針、與消費者相關的服務策略以及消費者此次服務進行時所用的接入設備,同時智能化Web服務還應該知道與消費者享受此次服務有關的以往歷史記錄。 在SunONE智能Web服務戰略中,XML和Java技術是這種鬆散耦合的可互操作性的關鍵。XML提供了標準的、與平台無關的數據結構,以表示語境信息,而Java技術則通過了一個與平台無關的編程界面標准集,來訪問和利用這些語境信息。不但如此,Sun 正在參與和領導開放智能Web服務的技術開發定義工作,包括Java技術、XML、ebXML、SOAP、UDDI以及更多其他的東西。 IBM:Web服務是電子商務應用的基礎設施 IBM認為:Web服務使交流和相互操作更有效,減少編碼過程和人為干擾。IBM正在發布的動態電子商務策略是現電子商務策略的一個延伸。過去兩年中,IBM參與了Web服務標準的開發,而且已經在好幾個產品中宣布了對Web服務標準的支持。與競爭對手不同的是,IBM對Web服務僅僅提供基礎設施,使企業能夠適應不斷變化的環境。 IBM在Web服務領域投資了幾十億美元,能有效地將兩大競爭對手的產品XML(微軟)和Java (Sun)結合起來。當用戶的Web服務同時需要二者時(Java用於應用程序的開發;XML用於信息傳播),IBM就可以提供獨一無二的解決方案,採用真正開放式的執行標准,而不是專有的標准。多年來,IBM在硬體和軟體方面的技術能力使其能為不同規模的公司解決棘手問題,堅決支持非專有技術的解決方案,從而加強了多平台的兼容性,這在當今電子商務市場上是非常必要的。IBM的動態電子商務將保持在標准方面合作,實施競爭的策略,Web服務只完成了一半,另一半是全功能基礎架構軟體,這種軟體使Web服務可用來進行智能交易,工作流程和業務進程管理的一部分。 補充: BEA:充分發揮分布式業務的潛力 Web服務可以被描述為協議、協定和網路設施,能通過互聯網將業務功能公開給授權方。簡言之,Web服務是具體的業務流程,它能夠:公開和描述自己;Web服務可以定義自己的功能和屬性,以便其它應用能夠了解它,並容易地向其它應用提供這種功能;其它服務能夠在Web上找到它的位置,可以被調用,返回響應。 任何組件或應用都可以作為Web服務,以便被其它組件或應用使用。同樣,BEA WebLogic Server上的任何應用都可以從Web上的任意位置查找和請求Web服務,即使Web服務位於另一個平台也能找到。多個Web服務可集中成一個應用,可以是簡單的Web服務(如查看股票價格),也可以是基於事務處理的復雜供應鏈集成和管理(如卡車負載優化和路由)。 BEA將Web服務分為兩類:簡單Web服務和復雜Web服務。簡單Web服務提供基本的「請求/響應」功能,本質上不屬於事務處理型服務,安全性不高。復雜Web服務將改變行業開展業務的方式,但它將為貿易合作夥伴通過互聯網協作提供一個框架。BEA同時提供簡單Web服務和復雜Web服務,並把它們作為BEA WebLogic E-Business Platform的一部分。另外,BEA還與制定標準的機構密切合作,指導相關Web服務標準的開發。 補充: Web 服務是一種可以用來解決跨網路應用集成問題的開發模式,這種模式為實現「軟體作為服務」提供了技術保障。而「軟體作為服務」實質上是一種提供軟體服務的機制,這種機制可以在網路上暴露可編程介面,並通過這些介面來共享站點開放出來的功能。 Web 服務的主要特點之一是,客戶端訪問Web 服務只需要通過網際網路標准協議,如HTTP或XML,以及SOAP,不需要專門的協議,如RPC或IIOP。

⑤ 使用什麼註解可以聲明webservice業務介面

Web Service 元數據注釋(JSR 181)

@WebService
1、serviceName: 對外發布的服務名,指定 Web Service 的服務名稱:wsdl:service。預設值為 Java 類的簡單名稱 + Service。(字元串)
2、endpointInterface: 服務介面全路徑, 指定做SEI(Service EndPoint Interface)服務端點介面
3、name:此屬性的值包含XML Web Service的名稱。在默認情況下,該值是實現XML Web Service的類的名稱,wsdl:portType 的名稱。預設值為 Java 類或介面的非限定名稱。(字元串
4、portName: wsdl:portName。預設值為 WebService.name+Port。
5、targetNamespace:指定你想要的名稱空間,認是使用介面實現類的包名的反綴
6、wsdlLocation:指定用於定義 Web Service 的 WSDL 文檔的 Web 地址。Web 地址可以是相對路徑或絕對路徑。(字元串)
注意:實現類上可以不添加Webservice註解

@WebMethod
注釋表示作為一項 Web Service 操作的方法,將此注釋應用於客戶機或伺服器服務端點介面(SEI)上的方法,或者應用於 JavaBeans 端點的伺服器端點實現類。
要點:
僅支持在使用 @WebService 注釋來注釋的類上使用 @WebMethod 注釋

1、operationName:指定與此方法相匹配的wsdl:operation 的名稱。預設值為 Java 方法的名稱。(字元串)
2、action:定義此操作的行為。對於 SOAP 綁定,此值將確定 SOAPAction 頭的值。預設值為 Java 方法的名稱。(字元串)
3、exclude:指定是否從 Web Service 中排除某一方法。預設值為 false。(布爾值)

@Oneway
注釋將一個方法表示為只有輸入消息而沒有輸出消息的 Web Service 單向操作。
將此注釋應用於客戶機或伺服器服務端點介面(SEI)上的方法,或者應用於 JavaBeans 端點的伺服器端點實現類

@WebParam
注釋用於定製從單個參數至 Web Service 消息部件和 XML 元素的映射。
將此注釋應用於客戶機或伺服器服務端點介面(SEI)上的方法,或者應用於 JavaBeans 端點的伺服器端點實現類。
1、name :參數的名稱。如果操作是遠程過程調用(RPC)類型並且未指定partName 屬性,那麼這是用於表示參數的 wsdl:part 屬性的名稱。
如果操作是文檔類型或者參數映射至某個頭,那麼 -name 是用於表示該參數的 XML 元素的局部名稱。如果操作是文檔類型、
參數類型為 BARE 並且方式為 OUT 或 INOUT,那麼必須指定此屬性。(字元串)
2、partName:定義用於表示此參數的 wsdl:part屬性的名稱。僅當操作類型為 RPC 或者操作是文檔類型並且參數類型為BARE 時才使用此參數。(字元串)
3、targetNamespace:指定參數的 XML 元素的 XML 名稱空間。當屬性映射至 XML 元素時,僅應用於文檔綁定。預設值為 Web Service 的 targetNamespace。(字元串)
4、mode:此值表示此方法的參數流的方向。有效值為 IN、INOUT 和 OUT。(字元串)
5、header:指定參數是在消息頭還是消息體中。預設值為 false。(布爾值)

@WebResult
注釋用於定製從返回值至 WSDL 部件或 XML 元素的映射。將此注釋應用於客戶機或伺服器服務端點介面(SEI)上的方法,或者應用於 JavaBeans 端點的伺服器端點實現類。

1、name:當返回值列示在 WSDL 文件中並且在連接上的消息中找到該返回值時,指定該返回值的名稱。對於 RPC 綁定,這是用於表示返回值的 wsdl:part屬性的名稱。對於文檔綁定,-name參數是用於表示返回值的 XML 元素的局部名。對於 RPC 和 DOCUMENT/WRAPPED 綁定,預設值為 return。對於 DOCUMENT/BARE 綁定,預設值為方法名 + Response。(字元串)
2、targetNamespace:指定返回值的 XML 名稱空間。僅當操作類型為 RPC 或者操作是文檔類型並且參數類型為 BARE 時才使用此參數。(字元串)
3、header:指定頭中是否附帶結果。預設值為false。(布爾值)
4、partName:指定 RPC 或 DOCUMENT/BARE 操作的結果的部件名稱。預設值為@WebResult.name。(字元串)

@HandlerChain
注釋用於使 Web Service 與外部定義的處理程序鏈相關聯。只能通過對 SEI 或實現類使用 @HandlerChain 注釋來配置伺服器端的處理程序。
但是可以使用多種方法來配置客戶端的處理程序。可以通過對生成的服務類或者 SEI 使用 @HandlerChain 注釋來配置客戶端的處理程序。此外,可以按程序在服務上注冊您自己的 HandlerResolver 介面實現,或者按程序在綁定對象上設置處理程序鏈。

1、file:指定處理程序鏈文件所在的位置。文件位置可以是採用外部格式的絕對 java.net.URL,也可以是類文件中的相對路徑。(字元串)
2、name:指定配置文件中處理程序鏈的名稱。
來源:http://yufenfei.iteye.com/blog/1685249

⑥ WEB 站點什麼意思

web站點就是我們平時所做的網站
web服務(web
service)是基於xml和https的一種服務,其通信協議主要基於soap,服務的描述通過wsdl,通過uddi來發現和獲得服務的元數據

⑦ 什麼是web服務

Web service是一個平台獨立的,低耦合的,自包含的、基於可編程的web的應用程序,可使用開放的XML標准來描述、發布、發現、協調和配置這些應用程序,用於開發分布式的互操作的應用程序。

Web Service技術, 能使得運行在不同機器上的不同應用無須藉助附加的、專門的第三方軟體或硬體, 就可相互交換數據或集成。

依據Web Service規范實施的應用之間, 無論它們所使用的語言、 平台或內部協議是什麼, 都可以相互交換數據。Web Service是自描述、 自包含的可用網路模塊, 可以執行具體的業務功能。

Web Service也很容易部署, 因為它們基於一些常規的產業標准以及已有的一些技術,諸如標准通用標記語言下的子集XML、HTTP。

Web Service減少了應用介面的花費。Web Service為整個企業甚至多個組織之間的業務流程的集成提供了一個通用機制。


(7)web服務元數據擴展閱讀:

Web service應用:

1、新平台

Web service平台需要一套協議來實現分布式應用程序的創建。Web service平台必須提供一套標準的類型系統,用於溝通不同平台、編程語言和組件模型中的不同類型系統。

2、XML和XSD

可擴展的標記語言(標准通用標記語言下的一個子集)是Web service平台中表示數據的基本格式。除了易於建立和易於分析外,XML主要的優點在於它既是平台無關的,又是廠商無關的。

3、SOAP

Web service建好以後,你或者其他人就會去調用它。簡單對象訪問協議(SOAP)提供了標準的RPC方法來調用Web service。

⑧ 如何:在部署報告中查找 IIS Web 伺服器的 IIS 元資料庫設置

在 XML 部署報告中,「InternetInformationServices」 <Resource 元素包含用來標識該伺服器上應有的 IIS 設置的 <Setting和其他<Resource元素。

⑨ 外網webservice 元數據包含無法解析的引用解決方法怎麼解決

public class Calcul {
public static void main(String[] args) {
circularArea();
}
public static void circularArea(){
int r=2;
float π=3.14f;
float circularArea = π*r*r;
System.out.println(circularArea);
}