2003 年 9 月
September 2003
IBM Corporation
Donald F. Ferguson
Tony Storey |
Microsoft Corporation
Brad Lovering & nbsp; John Shewchuk John Shewchuk |
目錄
1.0 簡介
1.1 可組合服務
1.2 實務組合範例
2.0 Web 服務:Service-Oriented架構
2.1 服務是由架構和合約類型所描述
2.2 服務相容性超過類型相容性
2.3 服務方向假設有不良專案,而且會發生
2.4 服務方向可彈性地系結服務
3.0 Web 服務規格和函式
3.1 Web 服務的可組合方法
3.2 基本概念 – 傳輸和傳訊
3.2.1 傳輸 – HTTP、HTTP/S、SMTP
3.2.2 訊息格式 – XSD
3.2.3 WS-Addressing
3.3 描述
3.3.1 WSDL
3.3.2 WS-Policy
3.3.3 取得描述
3.3.4 WS-MetadataExchange
3.3.5 UDDI
3.4 服務保證
3.5 安全性
3.5.1 WS-Security
3.5.2 WS-Trust
3.5.3 WS-SecureConversation
3.5.4 WS-Federation
3.6 可靠的傳訊
3.6.1 WS-ReliableMessaging
3.7 交易
3.7.1 WS-Coordination
3.7.2 WS-AtomicTransaction
3.7.3 WS-BusinessActivity
3.8 服務組合
3.8.1 BPEL4WS
4.0 實務 Web 服務 – 範例
4.1 第 1 部分:客戶體驗
4.2 第 2 部分:供應商體驗
5.0 結論
6.0 通知
& nbsp; & nbsp; 1.1 Combinable services 現今的 Web 服務,特別是處理 XML 編碼 SOAP 訊息、透過 HTTP 傳送,並使用 Web 服務描述語言 (WSDL) 來描述的分散式服務,正在廣泛部署。 (XML、SOAP 和 HTTP 詞彙目前經常使用,而且在許多方面,其用法已超出其原始縮寫。為了完整性,此處列出這些縮寫:XML—eXtensible 標記語言、SOAP—簡單物件存取通訊協定和 HTTP—超文字傳輸通訊協定.) Web 服務會用於各種應用程式整合案例:從簡單、臨機操作、防火牆後置、資料共用到非常大規模的網際網路零售和貨幣交易。 而且,行動、裝置和方格案例中會套用愈來愈多的 Web 服務。 The XML, SOAP and HTTP terms are now frequently used, and in many ways they are used beyond their original acronyms. To be complete, they are listed here: XML-eXtensible logos, SOAP-simple object access protocols and HTTP-extratext communication protocols. Web 服務提供軟體元件之間的互通性,這些元件可以在不同公司之間通訊,而且可以位於不同的基礎結構上。 這可解決客戶、軟體發展人員和合作夥伴所面臨的其中一個最重要問題。 HTTP 和 SOAP 提供通訊和訊息互通性。 WSDL 提供服務的描述,以支援開發工具之間的互通性;它可補充通訊互通性,以及交換介面定義的能力。 HTTP and SOAP provide interoperability of communications and messages. WSDL provides a description of services to support interoperability among development tools; it can complement interoperability and the ability of interfaces to define interfaces. 基本 Web 服務規格集可讓客戶和軟體廠商解決重要的問題。 基於其成功,許多開發人員和公司都已準備好處理 Web 服務技術更困難的問題。 Web 服務的成功讓開發人員想要更多來自 Web 服務的功能。 由於有意義的工具和通訊互通性已成功,開發人員現在預期增強的函式可以交互操作。 Based on its success, many developers and companies are ready to deal with the more difficult issues of Web services. The success of Web services has led developers to want more functionality from Web services. 除了基本訊息互通性和介面交換之外,開發人員還需要較高層級的應用程式服務交互操作。 許多商業應用程式會在環境中執行, (「中介軟體」或「作業系統」) ,以支援安全性與交易等功能。 In addition to basic information interoperability and interfaces, developers need to interact with higher-level applications. Many commercial applications operate in the environment ( "intermediate software" or "business system") to support functions such as safety and trade. IBM、Microsoft 和其他產業中的其他人通常會要求讓 Web 服務更安全、更可靠且更能支援交易。 此外,我們要求提供這些功能,同時保留目前在 Web 服務中找到的基本簡單性和互通性。 IBM, Microsoft, and others in other industries usually demand that web services be made safer, more reliable, and more supportive of transactions. Moreover, we ask that these functions be maintained, while retaining the basic simplicity and interoperability currently found in web services. 本檔提供一組可解決這些需求的 Web 服務規格的簡潔概觀。 如需規格的詳細資料,我們會提供實際檔的參考。 本檔的主要目的是簡短定義這些規格提供給客戶的價值。 我們也描述這些規格如何彼此互補,以撰寫分散式應用程式的健全環境。 The main purpose of this file is to define briefly the values that these rules provide to clients. We also describe how they complement each other to create a sound environment for decentralized applications. 我們面臨重要的工程挑戰:如何為 Web 服務提供新的安全性、可靠性和交易功能,而不需要增加比所需的更複雜度? We face an important engineering challenge: how can we provide new security, reliability and transactional functions for Web services without the need to add more complexity than required? 如同我們已使用 SOAP 和 WSDL、IBM、Microsoft 和我們的合作夥伴一樣,遵循 Web 服務規格定義中 可組合性 的設計原則。 我們遵循的方法是以 Web 服務規格定義中的 可組合性 設計準則為基礎。 我們開發的每個規格都解決了立即的需求,而且在自己的許可權中具有價值。 例如,開發人員可以採用可靠的傳訊來簡化其解決方案開發,或採用 BPEL4WS 來定義其服務組合。 而且,雖然每個規格各自代表,但它們的設計目的是要彼此結合及使用。 As we have used SOAP and , IBM, Microsoft, and our partners, follow the design principles of as defined in the Web Service Code. For example, senders can use reliable messages to streamline their programs, or send B.E.L.4 as defined in the Web Service Regulations. 我們會使用「 組合性 」一詞來描述可合併的獨立規格,以提供更強大的功能。 作業系統和中介軟體提供者可以支援組成的功能,例如提供者可以整合可靠的傳訊支援來通訊 BPEL4WS 程式。 此範例結合兩個獨立規格,藉由免除在程式設計期間處理訊息通訊錯誤的需求,以簡化通訊程式的開發。 Professional systems and intermediary software providers can support the built-up function, for example, by integrating reliable communication support to communicate with BPEL4WS. This example combines two separate rules, by exempting the need to process communication errors during the programming period, in order to simplify the development of a communication program. 可組合性可累 加耗用量 或 漸進式探索 新的概念、工具和服務。 開發人員只需要瞭解並實作必要的專案,而且不再需要。 解決方案的複雜度只會因為問題的需求增加而增加,而不是因為技術「繁重」。 Developmenters only need to understand and implement the necessary projects, and they no longer need them. The complexity of solutions increases only because of the increased demand for the problem, not because the technology is "heavy." 可組合性具有並繼續成為 Web 服務的重要設計目標之一。 在過去數年內,我們已定義 SOAP 和 WSDL (最基本的 Web 服務規格,) 原本就支援組合。 Web 服務的基本特性之一是一般、多部分的訊息結構。 此結構可讓您 組合 新功能。 支援新服務的新訊息專案可能會以不會改變現有功能處理的方式新增至訊息。 例如,可以獨立新增交易識別碼和可靠的傳訊序號。 這兩個延伸模組不會彼此衝突,而且與既有的訊息結構相容。 In the last few years, we have defined SOAP and WSDL (the most basic Web service code,) as supporting the combination. One of the basic features of the Web service is a general, multi-part message structure. This structure allows you to combine with . The new message project that supports the new service may be newly added to the message in a way that does not change the current functionality. For example, new transaction identifiers and reliable communication sequences can be created independently. 圖 1. 可組合性可讓您視需要使用元素。 圖 1 顯示簡單的 Web 服務訊息,其中包含WS 位址、WS-Security 和 WS-ReliableMessaging的專案。 請注意,WS 定址、WS-Security和WS-ReliableMessaging元素是獨立的,而且這些元素可以獨立使用,而不需要改變其他元素的處理。 Diagram 1 shows a simple Web service message containing WS Address, . .
這項特性可讓安全性、可靠性和交易在 可組合 的訊息元素方面定義。 This feature allows security, reliability and transactions to be defined in terms of the message elements that combines . 組合的概念也可讓您建立一組定義完善的可組合 Web 服務,以支援安全性、可靠性等。這些定義完善的服務會指定支援較高層級 Web 服務功能所需的服務行為。 例如, WS-Trust 中定義的安全權杖服務會發出並驗證訊息中的安全性元素。 The concept of integration also allows you to create a set of well-defined collusive Web services to support security, reliability, etc. These defined services specify the service actions that are required to support higher-level Web services. For example, gives and verifies the security elements of the message. 此外,服務取用者必須能夠判斷支援的和必要的服務保證。 服務必須記錄其交易、安全性、可靠傳訊等需求和支援。WS-Policy可讓 Web 服務以累加方式增強其 WSDL,以記錄其支援或需要的交易、安全性和可靠性功能。 WSDL 和 WS-Policy 可針對服務的描述啟用組合。 如此一來,另一方就能瞭解與服務互動時,要採用哪些訊息元素和更高層級的服務。 In addition, service recipients must be able to judge support and necessary service guarantees. Services must record their needs and support, such as transactions, security, and reliable communications. WS-Policy allows Web services to enhance their WSDLs cumulatively to record transactions, security, and reliability functions that they support or require. WSDL and WS-policy can capture the description of services. 圖 2 提供概觀,說明實務中的組合。 客戶和供應商會使用 Web 服務來處理訂單。 Diagram 2 provides an overview of the integration in practice. Clients and suppliers use web services to process orders. 圖 2. 訂單處理系統中的組合 Diagram 2. Combination in order processing system 在建置這些 Web 服務時,開發人員會使用 WSDL 和相關檔來描述其商務介面。 這些 WSDL 檔案描述客戶和供應商 Web 服務將處理的訊息集,例如 SubmitPurchaseOrder (SubmitPO) 從客戶流向供應商的訊息。 這會顯示在圖 2 頂端。 一旦應用程式的核心部分就緒,開發人員就可以決定支援額外的功能,例如,在這裡,他們決定進行訂單處理交易。 若要這樣做,它們會將下列元素 組成 現有的 結構: When these Web services are built, developers will use WSDL and related files to describe their business interfaces. These WSDL files describe the information collections that clients and suppliers Web services will handle, such as SubmitPurchaseOrder (SubmitPO) to move from client to provider. This will be shown at the top of figure 2. Once the core parts of the application are in place, developers can decide to support extra functionality, for example, here they decide to order a transaction. To do so, they will assemble the following elements into existing structures : 在上圖中,這些額外的元素會反白顯示。 In the above graph, these additional elements are shown in reverse. 模型是累加且可組合的,因為: Models are cumulative and collusive because: 可撰寫性是一個越來越重要的設計原則,但方法不一定能充分瞭解。 雖然個別 Web 服務規格會定義個別元素和服務如何互通,但本白皮書旨在提供如何撰寫規格集合的概觀,以提供更複雜的互通 Web 服務。 Writing is an increasingly important design principle, but the method is not always fully understood. While separate Web services regulations define how individual elements and services can work together, the White Book is designed to provide an overview of how to write a set of codes to provide more complex web services. 最近幾年,我們見證了以 Web 服務開發為中心的活動。 有了所有這些活動,請務必返回並詢問「為何?」問題當然,Web 服務不會啟用新種類的計算功能,在所有 Web 服務仍然在現有的電腦上執行之後,執行相同的指令集並存取相同的資料。 此外,在許多情況下,Web 服務通訊協定實際上可能會增加指定工作的通訊協定額外負荷。 In recent years, we have witnessed activities centred on Web Services Development. With all of these events, please return and ask "Why?" Of course, Web Services will not enable new kinds of computing, running the same command sets and accessing the same data after all Web Services are still running on existing computers. 我們在 Web 服務中看到這類興趣的其中一個重要原因是,Web 服務很適合啟用Service-Oriented架構 (SOA) 。 使用 Web 服務建置 SOA 時,解決方案包含由 URL 識別的自發服務集合,以及使用 WSDL 記載的介面,以及處理妥善定義的 XML 訊息。 SOA 是物件導向 (OO) 、程式與資料中心解決方案實作方法的自然補充。 事實上,建立 SOA 系統時,個別服務通常會使用其中一或多項技術來建構。 One of the important reasons why we see this interest in Web services is that Web services are well suited to enable the use of the Service-Oriented Structure (SOA). When using Web services to set up SOAs, solutions include a collection of spontaneous services that are recognized by URLs, as well as the use of WSDL-recorded interfaces, and the handling of well-defined XML messages. SOAs are natural additions to objects-directed (O), program-based and data center solutions. In fact, when creating SOA systems, individual services usually use one or more of these techniques to construct them. Service-Oriented架構與 OO 和程式系統不同,主要層面為: 系結。 服務會根據其提供 的功能 ,以及其傳遞 方式 來互動。 OO 和程式性系統會根據類型或名稱將元素連結在一起。 下列各節提供更多詳細資料。 The Service-Oriented structure is different from the OO and program system. The main layer is: . service interacts according to its function to provide and the way it transmits . OO and the program system link elements according to type or name. More details are provided in the following sections. 不同于先前的系統,Web 服務模型不會對需要通用實作的共用類型概念運作。 相反地,服務只會根據 WSDL/BPEL4WS 的 (合約進行互動,以取得訊息處理行為) ,以及訊息結構) (WSDL/XSD 的架構。 這可讓服務描述它可以在這些訊息上傳送和/或接收和排序條件約束的訊息結構。 結構與行為與明確、機器可驗證描述之間的分隔,可簡化異質環境中的整合。 Unlike previous systems, the Web service model does not operate on common types of concepts that require generic implementation. Conversely, the service will only interact with WSDL/BPEL4WS (a contract to get messages processed), and the structure of the message (WSDL/XSD). 此外,這項資訊足以描述服務介面的特性,讓應用程式整合不需要共用執行環境來建立訊息結構或行為。 In addition, this information is sufficient to describe the properties of the service interface, so that the integration of applications does not require a shared environment to create information structures or behaviours. 服務導向模型假設完全分散式的環境,如果不可能的話,很難將架構和/或合約中的變更傳播到遇到服務的所有合作物件。 服務方向表示合約和架構應該保持回溯相容,而且可能包含特定處理系統無法完全理解的資訊。 The service-direction model assumes a completely decentralized environment, and if this is not possible, it is difficult to transmit changes in the structure and/or contract to all co-operatives in the service. The service-direction suggests that the contract and structure should remain retroactively compatible and may contain information that cannot be fully understood by the particular processing system. 基於這個理由,設計用於服務導向設計的合約和架構技術,比傳統的物件導向介面更具彈性。 特別是,服務會使用 XML 元素萬用字元等功能 (,例如 xsd:any) 、架構延伸和選擇性 SOAP 標頭區塊,以不中斷已部署應用程式的方式發展服務。 這些特性是 Web 服務組合的關鍵。 For this reason, the design is designed to be more resilient to the contractual and structuring technology of the service-directed to the design than to the traditional object-guided interface. In particular, the service uses functions such as XML elements' Universal Characters (e.g. xsd:any), frame extension and optional SOAP header blocks to develop the service in a way that does not interrupt the deployment of the application. These features are key to the integration of Web services. 程式性與物件導向設計通常等於類型相容性與語意相容性。 服務方向提供更豐富的模型來判斷相容性。 結構化相容性是以合約 (WSDL 為基礎,並選擇性地使用 BPEL4WS) 和架構 (XSD) ,而且可以驗證。 此外,WS-Policy提供服務之間的服務保證相容性的額外自動化分析。 這會根據明確判斷提示的功能和需求,以WS-Policy 語句的形式完成。 Programmatic and object-guided design is usually equivalent to type compatibility and synonym compatibility. Service orientation provides a richer model to determine compatibility. Structured compatibility is based on contract (WSDL) and selective use of BPEL4WS and architecture (XSD), and can be verified. 使用 WS-Policy,服務會以包含判斷提示組合的電腦可讀取原則運算式形式描述其服務保證功能和需求。 這可讓服務根據他們提供合約的「如何」或「品質」來彼此選取 Using WS-Policy, the service describes its service guarantee function and needs in the form of a readable mode of operation with a combination of diagnostic tips. This allows the service to be selected according to the " how " or " quality " of their offer. 不論判斷提示套用至哪個服務,原則判斷提示都是以穩定且全域唯一的名稱來識別,其意義在時間和空間中都是一致的。 原則判斷提示也可能具有限定判斷提示確切解譯的參數。 Regardless of the service to which the judgment reminder is applied, the reason is that it is identified by the only name that is stable and global, the meaning of which is consistent in time and space. The reason is that it may also have parameters that limit the interpretation of the judgment reminder. 分散式應用程式的一些先前方法明確假設一般類型空間、執行模型和程式/物件參考模型。 基本上,「記憶體內部」程式設計模型定義了分散式系統模型。 Some of the earlier methods of a decentralized application explicitly assume that a general type of space, running model and application/object reference model is available. Basically, the " memory interior" programming model defines a decentralized system model. 服務方向只是假設服務會自發執行,而且沒有本機執行或一般作業環境的概念。 因此,SOA 會明確假設通訊、可用性和類型錯誤是常見的。 The direction of the service is merely to assume that the service will run automatically and that there is no concept of the operating or general working environment. So SOA will clearly assume that communication, usability, and type errors are common. 為了維護系統完整性,服務導向的設計會明確依賴各種技術來處理非同步和部分失敗模式。 非同步傳訊、交易、可靠傳訊和備援部署等技術是服務導向系統中的標準。 In order to preserve the integrity of the system, the service-directed design clearly relies on technologies to deal with non-synchronous and partial failure patterns. Technologies such as non-synchronous messaging, trade, reliable communication, and backup deployment are standards in the service-guided system. 此外,不同于記憶體內部模型,服務方向不僅假設傳入訊息的格式可能不正確,也假設它可能已針對惡意或完全未預期的目的傳輸。 因此,服務導向系統藉由要求應用程式證明已授與寄件者的必要許可權,藉此保護自己,讓 所有 訊息寄件者承擔證明責任。 與服務自主性的概念一致,服務導向架構通常會依賴系統管理的信任關係,以避免傳統 Web 應用程式中常見的個別服務驗證機制。 Moreover, unlike the inner model of the memory, the service direction assumes not only that the format for sending messages may not be correct, but also that it may have been transmitted for malicious or totally unexpected purposes. Thus, the service-direction system protects itself by requiring the application to prove the necessary permission of the person who has been granted the message, placing the burden of proof on all message senders. 服務 導向架構 的核心概念之一, (SOA) 是彈性的服務系結。 較傳統的程式、元件和物件模型會透過參考 (指標) 或名稱,將元件系結在一起。 SOA 支援更動態的服務實例探索,以提供要求者預期的介面、語意和服務保證。 Service leads to one of the core concepts of , which (SOA) is a scalable service chain. A more traditional program, widget, and object model combines components by reference (indicator) or name. SOA supports a more dynamic service practical exploration to provide the desired interface, language, and service guarantees for the requester. 在程式或物件導向系統中,呼叫端通常會根據伺服器匯出的類型或共用名稱稱空間來尋找伺服器。 在 SOA 系統中,呼叫端可以搜尋登錄,例如 UDDI 服務。 In the program or object-guiding system, the caller usually looks for the server according to the type or common name of the server. In the SOA system, the caller can search for entry, for example, UDDI service. 與服務實作相關的鬆散系結,可用來解決各種商務需求,以替代行為實作。 例如,替代實作可能會對應至供應鏈中的替代廠商,以便更快速地回應變更的市場狀況。 同樣地,替代實作可能是異地分散的資料中心,以啟用災害容錯。 For example, substitution may respond to alternative manufacturers in the supply chain in order to respond more quickly to changing market conditions. Similarly, substitution may be a geographically dispersed data center to activate disaster tolerance. 本節提供 Web 服務規格的概觀。 This section provides an overview of the web service regulations. 本節簡短說明可用的 Web 服務規格。 我們會向解決方案提供者說明其價值、其在更廣泛的架構中的角色,以及它們如何彼此相加。 This section provides a brief description of the available Web services. We will explain to the solutions providers their value, their role in the broader architecture, and how they add up. 下圖提供 IBM、Microsoft 和其他公司所發行之 Web 服務規格的高階群組。 請注意,此圖並非表示群組之間的嚴格分層;而是要提供功能區域之間關聯性的直覺。 例如,訊息安全性不需要 Description,同樣地描述是訊息的實用開發時間概念。 The figure below provides a high-level group of IBM, Microsoft, and other web service codes that IBM, Microsoft, and other companies publish. Note that it does not represent a strict hierarchy between groups; rather, it provides an intuition of the connection between functional areas. 圖 3. 可互通的 Web 服務通訊協定架構 Diagram 3. An interoperable web-service communication protocol setup 如果我傳送以法文撰寫的信件,但您預期有英文電話,我們不會通訊。 Web 服務的互通性面臨相同的問題;我們藉由提供一組常見的傳輸和傳訊技術來解決此問題。 If I send a letter in French, but you are expected to have a phone call in English, we will not communicate. The interoperability of web services faces the same problem; we solve it by providing a common set of transmission and communication techniques. 此外,為了確保這些技術在實務上有效,IBM、Microsoft 和其他人員建立了 Web 服務互通性組織 (WS-I) 。 最近,WS-I 發行了一個基本設定檔,正式記載可互通的 Web 服務傳輸和傳訊機制。 In addition, to ensure that these technologies are operationally effective, IBM, Microsoft, and others have established the Web Services Interconnectivity Organization (WS-I). Recently, WS-I issued a basic configuration file to officially record an interoperable web service transfer and transmission system. 這組規格會定義在 Web 服務之間移動原始資料的核心通訊機制。 This set of rules defines the core communication mechanism for moving raw data between web services. HTTP、HTTP/S 和 Simple Mail Transport Protocol (SMTP) 是此群組中的範例。 Web 服務實作可能會另外支援其他傳輸,但請務必支援標準、可互通的通訊協定。 HTTP, HTTP/S and Smple Mail Transport Protocol (SMTP) are examples of this group. The Web service does support other transmissions that may otherwise be supported, but requires that standard, interoperable communication protocols be supported. 下一組規格會定義編碼 Web 服務訊息以進行傳輸的互通性機制。 傳輸會在服務之間移動「位元組」區塊。 只有在參與者可以將位元組轉換成其應用程式所處理之實用資料結構時,這才有用。 The next set of rules defines the interoperability system for encoded Web service messages for transmission. Transfers move the bytes block between services. This will be useful only if the participants can convert the bytes to the actual data structures processed by their applications. 傳訊規格群組會定義如何正確格式化訊息。 XML 和 XML 架構定義提供機制,以抽象方式同意訊息 (資料) 結構。 SOAP 會定義標準編碼,以表示服務透過傳輸交換之位元組資訊中的 XML 訊息。 The XML and XML structures provide the right formatting of messages. defines the standard encoding to indicate the XML message in the byte message that the service has exchanged through the transfer. 訊息和回應都會移至某處,並來自某處。 WS-Addressing 提供可互通的傳輸獨立方法來識別訊息傳送者和接收者。 WS-Addressing也提供更精細的方法,以識別傳送或應該接收訊息之服務內的特定元素。 WS-Addressing provides an interoperable, stand-alone method to identify senders and receivers. WS-Addressing also provides a more sophisticated way to identify specific elements in a service that transmits or should receive messages. 現今大部分使用 Web 服務的系統,都會使用 HTTP 傳輸中放置的 URL 來編碼 Web 服務訊息的目的地。 回應的目的地取決於傳回傳輸位址。 此方法是以 HTTP 的基本瀏覽器伺服器模型為基礎。 Most web-service systems today use URLs placed in the HTTP transfer to encode the destination of the web-service message. The response destination depends on the address of the return transfer. This method is based on the basic HTTP browser server model. 使用現今的方法,來源和目的地資訊不是訊息本身的一部分。 這可能會造成數個問題。 例如,如果傳輸連線終止 (,則資訊可能會遺失,例如,如果回應需要很長的時間,且連線逾時) ,或訊息是由防火牆等媒介轉送。 This may cause several problems. For example, if transmission ends (and information is lost, for example, if the response takes a long time and the connection is over), or if the message is transmitted by a medium such as a firewall. WS-Addressing提供一種機制,可將目標、來源和其他重要位址資訊直接放在 Web 服務訊息中。 簡單地說,WS-Addressing將位址資訊與任何特定傳輸模型分離。 WS-Addressing provides a mechanism to direct target, source, and other important address information to web services. Simply put, WS-Addressing separates address information from any given transmission model. 在許多情況下,訊息會直接以服務為目標,而且只要使用 URL 即可描述訊息中的定址資訊。 但在實務上,我們通常會發現訊息是以服務內的特定元素或資源為目標。 例如,協調服務可能會協調許多不同的工作。 協調器必須將大部分的傳入訊息與它所管理的特定工作實例產生關聯,而不是協調服務本身。 In many cases, the message is directly aimed at services, and it can describe the location information in the message simply by using the URL. In practice, however, we usually find that the message is targeted at specific elements or resources in the service. WS-Addressing提供簡單但功能強大的機制,稱為 端點參考 ,可定址服務所管理的實體。 雖然這類資訊可以在服務的 URL 內以臨機操作方式編碼,但端點參考會提供標準 XML 元素,讓結構化方法來編碼這種精細的定址。 WS-Addressing provides a simple but powerful scheme, known as endpoint reference , to the entity managed by the location service. While this type of information can be encoded in the service's URL, the peer reference provides a standard XML element that allows the structure to encode a precise location. 與訊息來源和目的地的傳輸中性編碼結合的精細控制組合,可讓 Web 服務訊息透過媒介在各種傳輸之間傳送,並同時啟用非同步和延長的持續時間通訊模式。 Combining with the transfer-neutral code of the source and destination of the message allows web service messages to pass through the medium between different transmissions and at the same time activates non-synchronous and prolonged continuous time communication mode. WS-Addressing也可讓傳送者指出回應應該以與傳輸無關的方式前往何處。 訊息的回應不一定會移至寄件者。 例如,在 HTTP 中,如果沒有WS-Addressing就無法指定應該在其他地方傳送回應。 WS-Addressing also allows the sender to point out where the response should go in a way that is not related to the transmission. Messages are not always moved to the sender. For example, in HTTP, without WS-Addressing, it is not possible to specify that the return should be sent elsewhere. 這些傳訊模型的增強功能可讓 Web 服務用來支援許多商務案例。 例如,某些銀行工作需要人工檢閱,以在特定步驟進行核准。 工作在任何時間點通常有許多作用中的實例。 WS-Addressing提供一般機制,讓傳入或傳出訊息與特定工作產生關聯。 服務使用的機制對透過端點參考使用服務的機制是透明的。 The enhanced functionality of these communication models can be used by Web services to support many business cases. For example, some banks need to be manually inspected for approval at certain steps. 傳輸和訊息規格可讓 Web 服務使用訊息進行通訊。 但參與者如何知道訊息是什麼? Web 服務檔或描述其傳送和接收的訊息的方式為何? 使用 Web 服務需要瞭解 Web 服務將取用並產生之訊息,也就是 Web 服務的 介面 。 規格的描述群組可讓 Web 服務表達其介面和功能。 Transfer and message codes allow Web services to use messages for communication. But how do participants know what the messages are? What is the way the Web service files or describe the messages they send and receive? Using Web services requires information about the messages that Web services will use and generate, i.e. interface for Web services . 除了訊息互通性之外;這些規格也會啟用 開發工具互通性。 描述規格提供標準模型,可讓來自不同廠商的不同工具共同支援開發人員。 Web 服務與實作和基礎結構選擇隔離合作夥伴的方式相同,描述規格會將合作夥伴與開發工具選項隔離。 In addition to information interconnectivity, these codes also enable the development tool interoperability. descriptions provide standard models that allow different tools from different manufacturers to support developers. Web services and implementation and foundation structures choose to separate partners in the same way that they separate partners from development tool selection. Web 服務描述語言 (WSDL) 和XML 架構 (XSD) 是此群組中的基底規格。 XML 架構可讓開發人員和服務提供者定義資料結構的 XML 類型,例如採購單和訊息,例如 CreatePO 訊息。 WSDL 可讓 Web 服務記錄接收和傳送的訊息。 換句話說,服務在接收和傳送的訊息方面會執行哪些「動作」或「函式」。 Web Service Description Language (WSDL) and in this group. The XML Structure allows developers and service providers to define data structures like XMLs, such as purchase orders and messages, such as CreatePo messages. WDL allows the service to record messages received and sent. WSDL 提供一系列訊息互動模式的支援。 它支援沒有回應、要求/回應的單向輸入訊息,以及使用或不使用回應傳送的單向輸入訊息。 最後兩種模式可讓服務指定它所需的其他服務。 WSDL provides support for a range of message interactive modes. It supports one-way input messages that do not respond, request/respond, and uses or does not use one-way input messages that respond. The last two modes allow the service to specify the other services it needs. 建議的 WSDL 增強功能支援記錄服務的通訊協定和訊息格式,以及服務的位址。 The suggested WSDL enhancement supports communication protocols and message formats for recording services, as well as the address of the service. WSDL 和 XSD 定義通常不提供足夠的資訊來呼叫 Web 服務。 WSDL 和 XSD 會定義服務的介面語法,但不會表示服務如何傳遞其介面或服務預期呼叫者的資訊。 例如,服務是否需要安全性或實作交易? WSDL and XSD definitions do not usually provide enough information to call Web services. WSDL and XSD define the syntax of the service interface, but do not mean how the service will convey information about its interface or the intended caller of the service. For example, does the service need to be secure or traded? WS-Policy 可讓服務指定其預期呼叫端的內容,以及其實作其介面的方式。 WS-Policy是達到服務較高層級功能作業互通性的關鍵。 安全性、交易、可靠的傳訊和其他規格需要具體WS-Policy架構。 這些可讓服務描述其預期的功能保證,並提供給來電者。 WS-Policy allows the service to specify the content of its intended caller and the way it actually works. WS-Policy is the key to the interoperability of higher-level functional services. WS-Policy架構提供定義原則運算式的基底模型。 The WS-Policy setup provides a base model that defines the principle mode of operation. WS-Policy 支援匯總原則語句的文法,並允許建構更有彈性且完整的原則集。 WS-Policy supports the grammar of the general text and allows the construction of more robust and complete sets of principles. WS-PolicyAttachment 會指定如何將原則集與 XML 訊息和 WSDL 元素產生關聯, (作業和 portTypes) 。 WS-PolicyAttachment specifies how to associate the original set of principles with XML messages and WSDL elements (doing and porttypes). WS-Policy和WS-PolicyAttachment提供架構。 個別規格會定義其網域特定的原則語句和架構。 WS-Policy and WS-PolicyAttachment provide the architecture. A different rule defines the language and structure of its domain. 最後, @PageWS-PolicyAssertions 提供一組基本通用原則語句,可用來達成互通性。 Finally, XML、XSD、WSDL 和 WS-Policy 支援,描述服務的介面和服務保證。 但是,服務的潛在使用者如何找到這項資訊? XML, XSD, WSDL and WS-Policy support describe the interfaces and service guarantees. But how can the potential users of the service find this information? 目前最常見的方法是透過電子郵件交換或口語。 需要更一般用途的可調整模型。 有兩個選項,服務可能會直接移至服務,以使用 WS-MetadataExchange 取得資訊,或者可以選擇使用 UDDI 服務來匯總多個目標服務的這項資訊。 The most common way to do this is through e-mails or language. More general-purpose adjustable models are needed. With two options, services may be moved directly to services to access information using WS-MetadataExchange, or the option of using the UDDI service to transfer this information for multiple target services. 開發人員在具有服務的參考時使用WS-MetadataExchange,並需要瞭解其用途。 開發人員想要尋找支援一組特定函式之服務的參考時,會使用 UDDI。 Developers use WS-MetadataExchange for service references and need to understand their use. Developers use UDDI when they want to find references that support a particular set of functions. 如上所述,服務通常會提供描述服務本身的資訊,例如 WSDL、WS-Policy 和 XSD。 我們參考服務相關資訊作為中繼資料的收集性。 WS-MetadataExchange規格可讓服務透過 Web 服務介面提供中繼資料給其他人。 假設只有 Web 服務的參考,潛在使用者可以存取一組 WSDL/SOAP 作業,以擷取描述服務的中繼資料。 用戶端可以在設計階段、建置用戶端或在執行時間使用WS-MetadataExchange。 As noted above, services usually provide information that describes the service itself, such as WSDL, WS-Policy, and XSD. We refer to service-related information as the collection of metadata. The WS-MetadataExchange code allows the service to provide metadata to others through the Web service interface. Assuming that only web services are consulted, users can access a set of WSDL/SOAP jobs to access the memory of the description service. 通常,收集有關服務集合的中繼資料,以及讓資訊可在可搜尋的表單中提供。 這類中繼資料匯總服務是實用的存放庫,組織可以在其中發佈其提供的服務、描述其服務的介面,以及啟用網域特定的服務分類法。 UDDI) 規格 (通用描述和探索介面會定義中繼資料匯總服務。 Usually, metadata on service pools are collected and information is made available in searchable forms. The metadata repository is a practical repository in which organizations can publish the services they provide, describe the interfaces of their services, and enable the use of domain-specific service subcategories. UDDI) specifications (general description and exploration interface definition of metadata flow services). 解決方案可以在設計階段查詢 UDDI,以尋找與其需求相容的服務。 例如,開發人員可以在其 BPEL4WS 工作流程的定義中使用這些服務。 解決方案也可以在執行時間查詢 UDDI。 在此案例中,呼叫端「知道」所需的介面,並搜尋符合其功能需求的服務,或由已知的合作夥伴提供。 For example, developers can use these services in the definition of their BPEL4WS workflow. Solving solutions can also query UDDI at the time of execution. In this case, the caller "knows" the interface needed to search for services that meet its functional needs, or by known partners. 請注意,可用來使用中繼資料填入 UDDI 服務的機制之一,就是使用 WS-MetadataExchange 從服務取得中繼資料。 Please note that one of the mechanisms available to use metadata to fill in the UDDI service is to use WS-MetadataExchange to get metadata from the service. Web 服務因為能夠橋接不同的系統而產生太多熱度。 開發人員已使用傳輸、傳訊和描述的基本功能來產生許多功能完整的解決方案。 不過,若要讓開發人員接受建立更強大的整合解決方案,Web 服務必須提供功能,以確保更傳統的中介軟體解決方案所提供的相同 服務保證 層級。 它不足以直接交換訊息。 應用程式和服務位於中介軟體和系統中,可提供寶貴的較高層級功能,例如安全性、可靠性和交易作業。 Web 服務必須提供這些函式之間互通性的機制。 However, if developers are to accept a stronger integrated solution, Web services must provide functionality to ensure that the same level of service is guaranteed by more traditional intermediary solutions . It is not enough to directly exchange information. 此 @Page系列規格對於跨組織 Web 服務至關重要。 這些規格支援驗證和訊息完整性、機密性、信任和隱私權。 它們也支援不同組織之間的安全性同盟。 The rules of the series WS-Security 是安全 Web 服務的基本建置組塊。 現今,大部分分散式 Web 服務都依賴安全性功能的傳輸層級支援。 範例包括 HTTP/S 和BASIC-Auth驗證。 這些安全性方法可提供安全通訊所需的最低需求。 不過,它們所提供的函式層級明顯小於現有中介軟體和分散式環境所提供的函式層級。 WS-Security is the basic building block for secure web services. Today, most decentralized Web services rely on transport layers for security functions. Examples include HTTP/S and BASIC-Auth tests. 兩個範例強調BASIC-Auth和 HTTP/S 的缺點。 Two examples highlight the shortcomings of BASIC-Auth and HTTP/S. WS-Security解決這些問題。 它支援: WS-Security solves these problems. WS-Security使用 Kerberos、X509 等) 的現有安全性 (模型。 規格具體定義如何以可互通的方式使用現有的模型。 若沒有 WS-Security,多方 Web 服務計算就無法安全。 WS-Security uses Kerberos, X509, etc.) for existing security (models. Regulations define how to use existing models in an interoperable manner. Without WS-Security, multiple Web services cannot be considered safe. 安全性依賴預先定義的信任關係。 Kerberos 的運作方式是因為參與者「信任」Kerberos 金鑰發佈中心。 PKI 的運作方式是因為參與者信任根憑證授權單位。 WS-Trust 會定義可延伸的模型,以設定和驗證信任關係。 Security depends on predefined trust relationships. Kerberos operates because the participants "trust" Kerberos key distribution centre. PKI operates because the participants trust the root certificate licensing unit. WS-Trust defines extended models to configure and validate trust relationships. WS-Trust的主要概念是 安全性權杖服務 (STS) 。 STS 是一種區分的 Web 服務,會發出、交換及驗證安全性權杖。 WS-Trust可讓 Web 服務設定及同意其「信任」的安全性伺服器,以及依賴這些伺服器。 The main concept of WS-Trust is Safety Wand Services (STS). STS is a differentiated web service that issues, swaps, and verifies safety staff. WS-Trust allows Web Services to configure and agree to their "trust" safety servers, and relies on them. STS 具有廣泛的適用性,可用來發出各種判斷提示的安全性權杖。 在許多情況下,它會用來發出相同的判斷提示,但格式不同。 例如,STS 可能會發出 Kerberos 權杖判斷提示金鑰持有者為 Susan,而且可能會根據受信任的憑證授權單位單位所簽發的 X.509 憑證來執行此動作。 這可讓組織使用不同的安全性技術來同盟。 STS 也可能發出安全性權杖判斷提示,指出金鑰持有者是以判斷提示身分識別宣告的傳入安全性權杖為基礎的群組 BankTellers 成員。 STS may issue, for example, the Kerberos doctrine key holder is Susan, and may execute this action on the basis of an X.509 certificate signed by a trusted certifier. This allows the organization to use different security techniques to form alliances. STS may also issue a security scepter, pointing out that the key holder is a group of BankTellers who transmits a safety scepter as the basis for an identity specifier declaration. 某些 Web 服務案例只牽涉到少數訊息的短暫交換。 WS-Security可立即支援此模型。 其他案例牽涉到 Web 服務之間的長時間、多訊息交談。 WS-Security也支援此模型,但解決方案不是最佳的。 Some web-service cases involve only a short temporary exchange of few messages. WS-Security can immediately support the model. Other cases involve lengthy, multi-message conversations between web-services. 在下列案例中,有兩個WS-Security的次佳用法: In two of the following cases, there were suboptimal uses of WS-Secure: 基於這些原因,HTTP/S 等通訊協定會使用公開金鑰來執行定義 交談特定金鑰 的簡單交涉。此金鑰交換允許更有效率的安全性實作,也會減少使用一組特定金鑰加密的資訊量。 For these reasons, communication protocols such as HTTP/S will use a public key to execute a simple transaction defined as to negotiate a particular key . This key exchange allows for more efficient safety practices and reduces the amount of information that is encrypted with a set of specific keys. WS-SecureConversation 為 WS-Security 提供類似的支援。 參與者通常會使用WS-Security搭配公開金鑰來啟動「交談」或「會話」,並使用WS-SecureConversation同意會話特定金鑰來簽署和加密資訊。 WS-SecurityConversion provides similar support for WS-Security. Participants usually use WS-Security to mix public access keys to initiate "interview" or "meeting" and use WS-Security to agree to sign and encrypt information about specific key messages. WS-Federation 可讓一組組織建立單一虛擬安全性網域。 例如,旅遊代理人、航空公司和旅館鏈結可能會設定這類同盟。 「登入」任何同盟成員的使用者,已有效地登入所有成員。 WS-Federation定義數個模型,以透過WS-Trust與WS-SecureConversation拓撲之間的通訊協定來提供同盟安全性。 WS-Federation allows a group of organizations to create a single virtual security domain. For example, travel agents, airlines, and hotel links may configure such alliances. 此外,客戶在處理企業時通常會有「屬性」。 例如,視窗或雜訊基座的喜好設定,或中型汽車。 WS-Federation可讓成員設定同盟屬性空間。 這可讓每個參與者能夠安全地存取每位成員有關使用者的屬性資訊。 In addition, clients usually have ‘property’ when dealing with businesses. For example, windows or nose bases are preferred, or medium-sized vehicles. 個人的相關屬性和資訊可能會密切保存,以進行隱私權保護,或因為該資訊為特定成員提供競爭優勢。 為了支援這些需求,WS-Federation支援 假名模型。 已向旅遊機構驗證的使用者在與航空公司或旅館的互動中產生「別名」。 這可保護終端使用者的隱私權,以及旅遊機構可能透過瞭解使用者屬性而獲得的競爭優勢。 Personal affiliations and information may be kept closely to protect privacy rights, or because the information offers competitive advantages to particular members. To support these demands, WS-Food supports the pseudonym model. 在網際網路世界中,幾乎所有的通道都不可靠。 訊息消失。 連線中斷。 In the online world, almost all channels are unreliable, and the message disappears, and the connection breaks down. 如果沒有可靠的傳訊標準,Web 服務應用程式開發人員必須將這些函式建置到其應用程式中。 瞭解基本方法和技術,例如許多作業和中介軟體系統可確保訊息具有唯一識別碼、提供序號,並在訊息遺失時使用重新傳輸。 如果應用程式 Web 服務開發人員在其應用程式中實作這些模型。 它們可能會做出不同的假設或設計選擇,如果有任何可靠的傳訊,則很少。 If there is no reliable transmission standard, Web service developers must build these functions into their applications. Understanding basic methods and techniques, such as many of the operating and intermediary software systems, ensures that messages have a unique identifier, provide serial numbers, and use retransmission in case of loss. WS-ReliableMessaging 會定義機制,讓 Web 服務能夠確保透過不可靠的通訊網路傳遞訊息。 WS-ReliableMessage defines mechanisms that enable Web services to ensure that unreliable communications are transmitted via the Internet. WS-ReliableMessaging可確保服務實作可互通的方法,也可讓執行時間廠商透過提供實作通訊協定的服務來簡化應用程式開發。 這可大幅 簡化 應用程式開發的工作。 商務邏輯接著必須處理的錯誤狀況較少。 WS-ReliableMessaging ensures that services are interoperable, and allows time manufacturers to simplify application development through the provision of services that provide effective communication protocols. This can significantly simplify the development of applications. Business logic is followed by fewer errors that have to be addressed. 最後,產業有一組豐富的訊息導向中介軟體,可哥靠地路由和散發訊息。 每個實作都會使用專屬通訊協定。 WS-Reliable傳訊通訊協定可讓不同的作業系統和中介軟體系統可靠地交換訊息。 因此,它支援將兩個不同的基礎結構橋接成單一、以邏輯方式完成的端對端模型。 In the end, the industry has a rich set of messages that lead to intermediaries, based on their location and distribution. Each edifice uses ad hoc communication protocols. WS-Reliable communication protocols allow for the reliable exchange of information between different operating systems and intermediary software systems. 複雜的商務案例可能需要多方交換多個訊息集。 例如,一組金融機構會設定涉及保險原則、年金、檢查帳戶和帳戶的金融供應專案。 參與者之間交換的多個訊息會構成邏輯「工作」或「目標」。 For example, a group of financial institutions would set up financial supply projects involving insurance principles, annuities, and checking accounts and accounts. Multiple messages exchanged among participants would form a logical "work" or "target". 為了成功,合作物件必須能夠: In order to succeed, collaborative objects must be able to: WS-Coordination、WS-AtomicTransaction 和 WS-BusinessActivity支援這些需求。 WS-Coordation, WS-AtomicTransation and WS-BusinessActivity support these needs. WS-Coordination@Page是一般機制,可啟動及同意多部分、多訊息 Web 服務工作的結果。 WS-Coordination有三個主要元素: WS-Coordation @Page is a general mechanism to activate and agree on the results of the multi-part, multi-letter web service work. WS-Coordination has three main elements: 接收具有新協調內容之訊息的 Web 服務會在內容中向協調器服務註冊,以接收結果資訊。 其他規格可能會針對網域和保證特定需求來增強此架構。 The Web service, which receives messages with new protocols, registers its contents to the modem service to receive information on the results. Other regulations may enhance this structure by targeting the domain and guaranteeing specific needs. WS-Coordination是一般架構和功能。 WS-AtomicTransaction和WS-BusinessActivity擴充此架構,讓分散式運算中的參與者能夠強固地判斷結果。 WS-Coordification is a general structure and function. WS-AtomicTransation and WS-BusinessActivity expand this structure to allow participants in decentralized calculations to determine the results strongly. WS-AtomicTransaction 會定義一組特定的通訊協定,這些通訊協定會插入WS-Coordination模型,以實作傳統的雙階段不可部分完成交易通訊協定。 請務必注意,不可部分完成的雙階段模型只與相關的服務有關。 網站或基礎結構供應專案服務可能會公告兩階段認可,但使用一些其他企業內部模型,例如補償或版本設定。 這種自由讓簡單的雙階段認可模型更適合長時間執行的網際網路計算。 WS-AtomicTransation will define a set of specific communications protocols that will be inserted into the WS-Coordation model in order to implement a traditional two-stage transactional communication protocol. Please note that the non-completed two-stage model is only relevant to the service. WS-BusinessActivity 會定義一組特定的通訊協定,這些通訊協定會插入WS-Coordination模型,以實作長時間執行的補償型交易通訊協定。 雖然 BPEL4WS 會定義商務程式的交易模型,但WS-BusinessActivity指定對應的通訊協定轉譯。 同樣地,這是 Web 服務規格的組成性範例。 -businessActivity defines a set of specific communications protocols that will be inserted into the WS-Coordation model to implement long-standing transactional communication protocols. While BPEL4WS will define a business transaction model, WS-BusinessActivity assigns the communication protocols to be translated. Web 服務分層中的最上層元素是 服務組合。 服務組合可讓開發人員「撰寫」服務,以交換 SOAP 訊息並在 WSDL 中定義其介面,並將WS-Policy轉換成匯總解決方案。 匯總是組成 Web 服務。 The top-level element of the Web service layer is service combination . The service combination allows the developer to "write" the service to exchange SOAP messages and define its interface in WSDL, and converts WS-Policy into a CSP solution. Web 服務的商務程式執行語言 (BPEL4WS) 規格支援服務組合。 它可讓開發人員定義一組共同實作共用商務解決方案的 Web 服務結構和行為。 服務集合的每個元素都會使用 WSDL 和 WS-Policy 來定義其介面。 撰寫的解決方案本身是 Web 服務,它支援 HTTP/SOAP 訊息,並使用 WSDL 和 WS-Policy 定義其介面。 組合有三個層面:結構、資訊和行為。BPEL4WS 引進三種支援每個組合層面的建構。 It combines three layers: structure, information and behaviour. BPEL4WS introduces three types of structures that support each layer. partnerLink定義複合服務與參與整體解決方案的 Web 服務之間的具名關聯。 複合服務和參與服務會使用 WSDL 和 WS-Policy 彼此定義其介面。 範例可能是製造公司與供應商之間的關聯。 partnerLink defines a well-known connection between a copy service and a web service involved in an overall solution. The copy and participation service defines its interface using WSDL and WS-Policy. 組合與合作夥伴之間的 partnerLink 概念和 WSDL/WS-Policy 介面會定義服務組合 的結構 。 他們會定義共同作業以形成組合的服務類型,以及它們與哪些保證層級交換的訊息 (安全性、交易等) The partnerLink concept and the WSDL/WS-Policy interface define the structure of . They define how to work together to form a combined service type, and with which levels of security they interact with (security, trade, etc.) BPEL4WS 也支援定義服務組合 的資訊 。 BPEL4WS 定義變數的概念。 複合服務會定義一組變數,每個變數都有 XSD 定義。 特定服務的目前狀態是其變數的狀態。 這會定義其已接收或傳送的訊息。 BPEL4WS also supports the definition of service combinations for information . BPEL4WS defines the concept of variables. The Combination Service defines a set of variables, with XSD defined for each variable. The current status of a given service is the status of its variables. This defines the message that it has received or sent. 最後,BPEL4WS 支援藉由 活動的概念來定義複合服務的行為。 BPEL4WS 定義的服務是一組活動或「步驟」,可定義服務的行為。 最基本的活動是將訊息傳送給合作夥伴,或接收來自合作夥伴的訊息。 每個訊息都會對應至變數。 BPEL4WS 支援在變數之間移動資料。 Finally, BPEL4WS support defines the behaviour of a complex service by using the concept of activity . BPEL4WS defines a service as a set of activities or "steps" that define the behaviour of a service. The most basic activity is to send messages to partners or receive messages from partners. BPEL4WS 活動的其中一個重要層面是 BPEL4WS 藉由允許控制使用非決定性行為,為服務定義外部可見 (公用) 行為提供特殊支援。 例如,在接受 PO 的決策程式中,點數檢查是以特定方式執行,可能是供應商的私人事項。 BPEL4WS 允許從程式描述卸載信用檢查行為來隱藏決策程式,但顯示 PO 的回應可能是接受或拒絕。 這種類型的 抽象 程式可以與 WSDL 搭配使用,以定義商務夥伴與垂直產業領域之間的互通商務通訊協定,例如供應鏈。 An important layer of BPEL4WS activity is BPEL4WS, which provides special support for service definition of externally visible (public) behaviour by allowing control over the use of non-deciding behaviour. For example, in a PO decision-making program, point checks are performed in a specific way, possibly as a private matter of the supplier. BPEL4WS allows to hide the decision from the program description credit check, but shows that the PO response may be accepted or rejected. This type of abstract program can be used in conjunction with WSDL to define business contacts between business partners and vertical industry domains, such as supply chains. BPEL4WS 也支援數種方法來控制活動的執行流程。 這些包括排序和圖形型流程。 BPEL4WS 支援變數上的述詞,以判斷複合服務所遵循的控制項路徑。 BPEL4WS also supports a number of ways to control the process of running the activity. These include sorting and graphic processes. BPEL4WS supports the description of the variable to determine the control path followed by the complex service. 總而言之,BPEL4WS 會新增兩個先前定義的 Web 服務規格。 In short, BPEL4WS will add two previously defined Web service codes. 下列案例示範如何使用 WS 規格一起使用,以建立可解決真實世界需求的 Web 服務。 此案例提供可供開發人員使用的強大功能範例,因為不同 WS 規格的可組合性。 The following example illustrates how the WS rules are used together to create web services that address the needs of the real world. The case provides powerful functional examples for developers because of the collusiveness of different WS rules. 此案例中所述的 Web 服務是針對 2003 年 9 月 17 日所持有技術的聯合IBM-Microsoft示範所建立。 他們用來建立可互通、安全、可靠且交易的應用程式;且跨越組織界限。 The Web service described in this case was created by the joint IBM-Microsoft model of technology held on September 17, 2003. They are used to create interoperable, safe, reliable, and traded applications; and to cross organizational boundaries. 此示範顯示同盟訂單處理和廠商受控清查 (VMI) 系統的執行範例,而汽車轉銷商會訂購汽車製造商的元件;製造商接著會從供應商取得多個倉儲的元件。 系統中所有應用程式對應用程式通訊都是使用先前所述的 Web 服務通訊協定所建置,並在具有 IBM 和 Microsoft 軟體的電腦集合上執行。 This example shows examples of the Alliance order processing and vendor controlled inventory (VMI) system implementation, while car transfer dealers order components for car manufacturers; manufacturers will then acquire multiple storage units from suppliers. All applications in the system communicate with applications using what was previously described as the Web Service Communication Agreement and run on a computer assembly with IBM and Microsoft software. 此案例會處理進行商務的一些最常見層面,也就是零售業務、其轉銷商和轉銷商供應商之間的互動。 此案例顯示如何撰寫不同的 WS 規格,以自動化商務程式基本概念,例如: This case deals with some of the most common aspects of doing business, namely, the interaction between retail businesses, their distributors and their distributor suppliers. The case shows how different WS codes can be written to automate basic concepts of business programs, such as: 此範例從名為 Auto 轉銷商的公司員工 Heather 開始,登入她的轉銷商安全內部網路網站。 此網站是使用標準、現成的 Web 技術所建置。 Heather 會使用她的瀏覽器進入網站。 網站的存取權受到密碼保護。 This example begins with Heather, a company worker named Auto Distributor, who logs into her distributor’s internal safety web site, which is built using a standard, existing Web technology. Heather uses her browser to access the site. Access to the site is protected by passwords. 圖 4. Heather 會登入公司的安全內部網路網站,並流覽至其自訂的我的頁面。 Heather 按一下 [我的頁面]。 在背景中,應用程式會從自動轉銷商的庫存資料庫收集資訊。 如果專案的清查層級低於定義的閾值,就會產生報告,並列在熱度頁面的 [您的警示] 顯示中。 Heather, press [my page]. In the background, the application collects information from the self-transferor's repository. If the project's inventory level is lower than the defined log value, a report is generated and shown on the thermal page's [Your Warning] display. Heather 發現她的公司在 WindshieldPro Wiper 刀鋒視窗上具有低庫存。 Heather found her company in low storage on the WindshieldPro Wiper blade window. Heather 按一下連結,並順暢地重新導向至自動製造商外部網路上的安全網頁,其中 Heather 可以下訂單。 體驗順暢,因為自動轉銷商軟體是以 Web 服務為基礎。 連結自動轉銷商內部網路與自動製造商外部網路的 Web 服務是由 WS-Federation 所組成。 WS-Federation可確保第二個月臺接受一個月臺授與的安全性認證。 Heather connects, and is smoothly redirected to a secure web page on an automatic producer’s external network, where Heather can order orders. Experience goes well, because the automatic distributor software is based on Web services. 以下是運作方式。 自動轉銷商和自動製造商已同意同盟其網站。 WS-Federation協調一系列的伺服器對伺服器通訊。 一旦 Heather 按一下 WindshieldPro 連結,將她帶至自動製造商的網頁,自動製造商的網頁伺服器就會查詢其授權服務,進而查詢自動轉銷商的授權服務。 自動轉銷商授權服務會確認 Heather 是已授權的使用者,傳輸認證以及 Heather 轉銷商的名稱,回到自動製造商的授權服務,以授與 Heather 存取權。 這會順暢地發生,所有 Heather 附注都是她已從一個網頁到另一個網頁。 Once Heather clicks on the WindshieldPro connection to take her to the auto-manufacturer web page, the auto-manufacturer’s webserver will search for its licensing services and for the licensing services of the self-transferor. The self-transferor licensing service will confirm that Heather is the authorized user, the license and the name of Heather's dealer, and return to the self-manufacturer’s licensing service to give Heather access. Web 服務也會查詢自動製造商客戶資料庫,以訂購連結到 Heather 帳戶的資訊。 此資訊會顯示在個人化的「我的頁面」自動製造商網頁中。 The Web service will also query the self-producer client database to order information linked to Heather's account. This information will be shown on the personalized "My page" self-producer web page. 圖 5:使用WS-Federated撰寫 Web 服務可讓 Heather 順暢地從自動轉銷商的個人化頁面移至自動製造商的個人化頁面。 熱度在自動製造商外部網路上的個人化網頁可讓她看到她目前沒有未完成的訂單;她有一個訂單 (50 個 SuperTires) 傳輸中;且其已完成訂單清單包含 20 個 CDPlus 單位,以及 50 個單位的清理工具。 A personalized web page with heat on the external network of the auto-producer allows her to see that she currently has no outstanding order; that she has an order (50 SuperTiles) transmission; and that the list of completed orders contains 20 CDPlus units, as well as 50 units of clean-up tools. Heather 按一下 [建立新訂單],並開啟新的頁面,並預先填入想要的元件:WindshieldPro Wiper 刀鋒視窗和訂購日期。 她只需要輸入的數量。 完成訂單所需的所有其他資訊都會從自動製造商資料庫填入。 Heather, press [to create a new order] and open a new page with the desired widget: WindshieldPro Wiper blade window and purchase date. She only needs to enter the amount. All other information needed to complete the order will be filled in from the automatically made vendor database. 圖 6. 因為大部分的訂購資料已經從 Auto Manufacturer 客戶資料庫的 Heather 檔案匯入,所以很容易下單。 Figure 6. As most of the ordered data has been imported from Heather files in the AutoManufacturer client database, it is easy to place the order. Heather 會提交訂單,並搜尋要購買的其他專案,或按一下 [登出] 結束其會話,並防止其他人從其自動電腦下訂單。 Heather will submit the order and search for other projects to purchase, or press [to log out] to finish the meeting and prevent others from ordering from their own computers. 請注意,使用WS-Federation撰寫 Web 服務,同時為自動轉銷商和自動製造商提供較低的系統管理成本和端對端安全性。 如果沒有這項技術,自動製造商必須維護所有授權轉銷商員工及其密碼的清單。 這會耗費成本、容易發生錯誤,並減少應用程式的安全性。 Please note that writing the Web service using WS-Food also provides lower system management costs and end-to-end security for auto-distributors and auto-producers. In the absence of this technology, auto-producers must maintain a list of all licensed re-distributors and their passwords. 例如,如果 Heather 結束其工作,則會在自動轉銷商移除她的使用者帳戶。 但是,如果轉銷商的系統管理員忘記連絡汽車製造商有關其出發時間,她會繼續存取購買網站。 使用 WS 同盟時,這不是問題,因為必須變更的唯一系統是自動轉銷商的識別提供者服務。 應用程式與授權服務的自動製造商系統都對 Heather、她的使用者名稱或密碼沒有固有的知識。 If Heather finishes her job, for example, she removes her user account from the automatic distributor. But if the system manager forgets about the car manufacturer’s departure time, she will continue to access the website. 雖然 Heather 從自動製造商訂購 WindshieldPro 抹除刀鋒視窗,但自公司實際建立自己的刀鋒視窗以來,已經是半年。 WindshieldPro Wiper 刀鋒視窗來自廠商供應商。 Although Heather ordered WindshieldPro from an automated manufacturer, it has been six months since the company actually established its own blade window. WindshieldPro Wiper window is from the manufacturer's supplier. Tony 是供應商的銷售代表,他會透過登入供應商的內部網路開始,就像 Heather 登入自動轉銷商內部網路一樣。 但 Tony 與具有 Web 服務內建支援的 Windows 應用程式搭配使用,而不是使用標準網頁瀏覽器。 Tony, the supplier’s sales representative, will start by logging into the supplier’s internal network, just as Heather logs into the automatic distributor’s internal network. But Tony mixes with Windows applications with web-based support, instead of using standard web browsers. 圖 7. 供應商內部網路上的 Tony 個人頁面會提醒他檢查其中一個主要客戶 Auto Manufacturer 的訂單和庫存。 7. Tony's personal page on the supplier's internal network reminds him to check the order and storage of one of the main clients AutoManufacturer. 當 Tony 按一下以檢查訂單和清查時,其應用程式會使用 Web 服務來要求 Tony 允許存取的庫存資料。 When Tony presses to check the order and check, its application uses the Web service to request the stored data that Tony allows access to. 此應用層級 Web 服務要求資料的其中一個重要層面,就是它是由WS-Federation所組成,可驗證其對自動製造商外部網路的存取權。 One of the important layers of the Web service request data is that it is made up of WS-Federation to verify its access to external networks of auto-producers. Web 服務會將結果傳回給供應商的頁面,其依產品類型和目前的庫存計數顯示。 The Web service returns the results to the supplier's page, which is shown by type of product and current stock count. 圖 8. Web 服務會將來自自動製造商庫存資料庫的庫存資料填入 Tony 的供應商頁面。 藉由使用 WS-Security 和 WS-Federation 撰寫要求,即可保護要求的安全。 供應商已與自動製造商進入 Just-In-Time 購買合約。 Tony 已獲授權,在庫存低於 20 時,提供自動重新供應訂單,作為廠商受控清查 (VMI) 的一部分。 Tony 按一下 WindshieldPro 以下訂單。 Tony 與 Auto Manufacturer 之間的所有訊息都會受到保護,因為 Web 服務支援由 WS-Security 保護所組成的 Web 服務支援。 Tony has been authorized to provide automatic re-supply orders as part of the controlled inventory (VMI) of the manufacturer when storage is lower than 20. Tony press the following order for WindshieldPro. All messages between Tony and Auto Manufacturing will be protected because Web services support web services organized by WS-Security.
& nbsp; & nbsp; & & nbsp; & & nbsp; 1.2 Factories
2.0 Web services: Service-Oriented structures
& nbsp; & nbsp; & bbsp;
3.2.1 傳輸 — HTTP、HTTP/S、SMTP
3.2.2 訊息格式 — XSD
3.2.3 WS-Addressing
3.3.1 WSDL
3.3.2 WS-Policy
3.3.3 取得描述
3.3.4 WS-MetadataExchange
3.3.5 UDDI
3.5.1 WS-Security
3.5.2 WS-Trust
3.5.3 WS-SecureConversation
3.5.4 WS-Federation
3.6.1 WS-ReliableMessaging
3.7.1 WS-Coordination
3.7.2 WS-AtomicTransaction
3.7.3 WS-BusinessActivity
3.8.1 BPEL4WS
注册有任何问题请添加 微信:MVIP619 拉你进入群
打开微信扫一扫
添加客服
进入交流群
发表评论