999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Oracle云平臺的PLM產(chǎn)品WebService訪問實現(xiàn)

2019-05-24 14:12:12鄭君媛
電腦知識與技術(shù) 2019年7期

鄭君媛

摘要:Web Service是通過Internet進行基于Http協(xié)議的網(wǎng)絡(luò)應(yīng)用間的交互,運用WSDL(web服務(wù)定義語言)/SOAP(簡單請求協(xié)議)等規(guī)范實現(xiàn)不同語言間的調(diào)用,可以通過讀寫XM文件,使任何兩個應(yīng)用程序在各種硬件平臺、操作系統(tǒng)以及軟件協(xié)議通信之間進行互相通信,進而提供異構(gòu)平臺的無縫銜接技術(shù)手段。目前Oracle提供了一套OVS(Oracle VM Server)虛擬機服務(wù)器環(huán)境,這個環(huán)境模擬了真實的OPC(ORACLE public cloud)公有云服務(wù)運行環(huán)境進行項目開發(fā),PLM產(chǎn)品就是部署在OPC之上。該文主要介紹通過Web Service技術(shù)對Oracle云平臺上的PLM產(chǎn)品上的數(shù)據(jù)和信息進行訪問的實現(xiàn)過程。

關(guān)鍵詞:Web Service;XML;ORACLE云平臺;訪問實現(xiàn)

中圖分類號:TP393.09 文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2019)07-0037-03

Abstract: Web Service is the interaction between network applications based on Http protocol through the Internet, using WSDL (Web Service definition language) /SOAP (simple request protocol) and other specifications to achieve the call between different languages, thus providing a heterogeneous platform seamless street technology means. Any two applications can communicate with each other across various hardware platforms, operating systems, and software protocol communications by reading and writing XML files. At present, Oracle provides a set of OVS (Oracle VM Server) virtual machine Server environment, which simulates the real OPC(Oracle public cloud) public cloud service running environment for project development, and PLM products are deployed on the OPC. This article mainly introduces the implementation process of accessing data and information on Oracle PLM products through Web Service technology.

Key words: Web Service; XML; ORACLE Cloud Platform; Access to Realize

1 核心術(shù)語概念

1)WSDL—WSDL是一種基于xml的格式,用于描述Web服務(wù)的接口。WSDL描述Web服務(wù)所有方面的端點、位置、協(xié)議綁定操作、參數(shù)和數(shù)據(jù)類型。

2)XML—Web Service交換的消息必須用XML表示。XML模式定義了基于XML的輸入輸出消息的數(shù)據(jù)結(jié)構(gòu), 這些消息由Web服務(wù)來交換,XML模式可以直接鏈接到WSDL定義, 或是嵌入到WSDL定義中[1]。

3)SOAP—SOAP是一種輕量級協(xié)議,用于在分散的分布式環(huán)境中交換結(jié)構(gòu)化信息。SOAP使用XML定義可擴展的消息傳遞框架。SOAP消息包括以下內(nèi)容: 用于包裝消息的信封,包括地址和安全信息。一組用XML編碼數(shù)據(jù)類型的序列化規(guī)則。過程調(diào)用和或響應(yīng)的約定。

2 背景

ORACLE公司為了方便開發(fā)OPC(ORACLE public cloud)公有云服務(wù),提供了一套叫作OVS(Oracle VM Server)虛擬機服務(wù)器環(huán)境,它模擬了真實的OPC運行環(huán)境,可以在OPC上進行云服務(wù)開發(fā)和測試工作,同時開發(fā)完成后可方便地將整個系統(tǒng)打包成為OPC可用的系統(tǒng)鏡像文件,并上傳部署到OPC[2]。在Oracle Cloud上部署了各種功能的產(chǎn)品,比如PeopleSoft、Fusion HCM, PLM產(chǎn)品等。WebService是一個SOA(面向服務(wù)的編程)的架構(gòu),基于普遍認(rèn)可的結(jié)構(gòu)化數(shù)據(jù)交換、消息傳遞、服務(wù)發(fā)現(xiàn)、接口描述和業(yè)務(wù)流程設(shè)計的規(guī)范。它是不依賴于語言,不依賴于平臺來實現(xiàn)不同的語言間的相互調(diào)用。用戶可以不通過界面登錄產(chǎn)品,直接通過WebService技術(shù)實現(xiàn)對Oracle Could上的PLM產(chǎn)品上的數(shù)據(jù)和信息既方便又安全的訪問[3]。

3 具體實現(xiàn)

現(xiàn)有Oracle公司的一套PLM產(chǎn)品,該產(chǎn)品由C++和Java語言混合開發(fā),主要運行在Linux平臺和Windows平臺,同時也支持Solaris,HPUX和AIX平臺。下面筆者結(jié)合之前參與的一個項目來進行具體分析如何通過WebService技術(shù)訪問Oracle Could上的PLM產(chǎn)品上的數(shù)據(jù)和信息。

3.1 WebService體系結(jié)構(gòu)

本項目使用Web Services構(gòu)建分布式應(yīng)用程序的技術(shù),使用標(biāo)準(zhǔn)化的XML消息傳遞系統(tǒng),并且不與特定的操作系統(tǒng)或編程語言綁定。通過Web Services封裝現(xiàn)有的業(yè)務(wù)流程,將它們作為服務(wù)發(fā)布,搜索和訂閱其他服務(wù),并在整個企業(yè)內(nèi)外交換信息。使用因特網(wǎng)進行遠(yuǎn)程過程是使用簡單的對象訪問協(xié)議(SOAP)來傳遞請求和響應(yīng)信息[4][5]。項目中WebServices使用行業(yè)標(biāo)準(zhǔn)核心技術(shù):1、Web服務(wù)描述語言(WSDL)2、XML和XML模式3、簡單對象訪問協(xié)議(SOAP)。

本項目設(shè)計的WebService體系結(jié)構(gòu)包含內(nèi)容如表1,可以根據(jù)角色和協(xié)議棧查看WebService體系結(jié)構(gòu):

3.2 WebService訪問模塊

本項目Web Service公開支持PLM應(yīng)用程序中的部分模塊提供的功能,如項目管理、工程管理和元數(shù)據(jù)管理等的許多功能。可提供的WebService訪問功能模塊部署在WebLogic應(yīng)用程序域中,如圖1所示。

3.3 WebService框架組件與實現(xiàn)

PLM產(chǎn)品的WebService框架包括以下內(nèi)容: 1.WebService wrapper,支持來自產(chǎn)品定義的LogiView過程的出站W(wǎng)ebService調(diào)用。2.Core Web Services,以支持映射到PLM產(chǎn)品的ECI-API調(diào)用的入站W(wǎng)eb服務(wù)調(diào)用。具體框架組件以及實現(xiàn)過程請見圖2。

WebService框架是PLM產(chǎn)品之上的另一層,它支持基于標(biāo)準(zhǔn)WebService技術(shù)的入站和出站通信。它提供了從PLM產(chǎn)品內(nèi)部的 LogiView進程(出站方向)內(nèi)部調(diào)用外部WebService的方法。此外,它允許外部應(yīng)用程序(WebService客戶端)通過Web服務(wù)調(diào)用PLM產(chǎn)品的API。WebService框架附帶了一組預(yù)定義的核心Web服務(wù),這些服務(wù)立即即用,支持最常見的集成場景,如創(chuàng)建PLM對象或獲取PLM對象。

3.4 WebService訪問過程實現(xiàn)與實例

3.4.1 本項目產(chǎn)品WebService會話處理

本項目產(chǎn)品核心WebService的每次調(diào)用都需要一個PLM產(chǎn)品服務(wù)器實例,所以限制服務(wù)器實例的數(shù)量以減少服務(wù)器上的資源負(fù)載非常重要。根據(jù)這個原則制定了以下處理機制來共享產(chǎn)品服務(wù)器實例。Oracle PLM引入了Ticket的概念,PLM Ticket是一種可在后續(xù)調(diào)用中使用的響應(yīng)字符串。這個Ticket使調(diào)用者可以訪問上次請求中使用的PLM服務(wù)器實例。此Ticket僅在服務(wù)器實例運行時有效。獲取Ticket后,客戶機代碼需要通過將Ticket字符串設(shè)置為密碼來配置端口。PLM Ticket提高了WebService的性能并簡化了會話管理。如果在usecase流中使用不同的WebService,那么當(dāng)客戶端調(diào)用另一個服務(wù)操作(例如本項目中的BusinessObject.getObjects)時,一個服務(wù)操作(例如本項目中的Configuration.setUserContext)的響應(yīng)返回的Ticket將用作密碼。

當(dāng)調(diào)用結(jié)束需要釋放分配給WebService會話的PLM服務(wù)器實例時,客戶機將使用PLM Ticket作為密碼調(diào)用loseSession操作,這將關(guān)閉EDM服務(wù)器實例并釋放服務(wù)器資源。

PLM會話可以提供到PLM服務(wù)器的連接,其中需要用到PLM會話管理器來允許管理PLM會話對象,這些對象用于將現(xiàn)有的連接和用戶內(nèi)容保存到PLM服務(wù)器。現(xiàn)有PLM會話對象的關(guān)鍵就是由PLM會話管理器生成的會話ID。如果要檢索PLM會話,需要提供PLM Ticket。當(dāng)創(chuàng)建一個新的PLM會話時,PLM Ticket被設(shè)置為PLM服務(wù)器實例,然后將PLM服務(wù)器實例設(shè)置為客戶端的SOAP消息。PLM會話的生命周期與給定的HTTP會話相同。HTTP會話的超時時間在文件web.xml中可以指定。

3.4.2 本項目WebService訪問過程

1)WebService請求

在本項目的WebService框架中,通過一個properties文件指定要訪問的PLM產(chǎn)品部署到的Weblogic服務(wù)器的WebService, 然后通過XML文件寫明需要訪問的對象請求[6][7],每個操作都有自己的請求數(shù)據(jù)類型,它是從定義好的RequestHeaderType繼承而來。所有請求的RequestHeaderType只有以下元素: messageID (String, optional): ID的默認(rèn)值是以毫秒為單位的當(dāng)前系統(tǒng)時間;messageName (String, optional): 消息名的默認(rèn)值是簡單的類名,如圖3例。

每個WebService調(diào)用獲得的響應(yīng)都包含一個響應(yīng)狀態(tài)代碼,它指示W(wǎng)ebService操作的成功或失敗。響應(yīng)狀態(tài)碼有四種類型: ①success,表示批處理中的所有WebService都已成功執(zhí)行,并且所有操作都按預(yù)期工作;②failure,表示批處理中的所有WebService在執(zhí)行期間都失敗了,即表明沒有執(zhí)行預(yù)期的操作;③warning,表示雖然批處理中的WebService已經(jīng)成功執(zhí)行,但是在執(zhí)行過程中也遇到了某些警告。客戶端需要分析這些警告,以驗證所有操作都按預(yù)期工作;④partial_success,表示當(dāng)一個或多個批處理請求失敗,但不是所有批處理請求都失敗時,批處理Web服務(wù)的執(zhí)行部分成功。即使在一批Web服務(wù)中有一個Web服務(wù)失敗,響應(yīng)狀態(tài)代碼也指示PARTIAL_SUCCESS。

3)WebService訪問結(jié)果

本項目WebService的調(diào)用者必須提供用戶憑證才能訪問應(yīng)用程序。這些憑證的屬性取決于所使用的WebService策略。下面是本項目中的WebService調(diào)用示例:

<?xml version='1.0' encoding='UTF-8'?>

xmlns:ns3="http://xmlns.oracle.com/Agile/e6/plm"

xmlns:ns4="http://xmlns.oracle.com/Agile/e6/HelloWorld/v0" />

主站蜘蛛池模板: 国产综合另类小说色区色噜噜| 91国内外精品自在线播放| 精品日韩亚洲欧美高清a| 精品国产成人三级在线观看| 国产精品网拍在线| 亚洲欧美天堂网| 黄色网页在线观看| 伊人久久婷婷五月综合97色| 国产不卡国语在线| 欧美区一区| 精品福利国产| 亚洲国产精品不卡在线| 色亚洲成人| 99在线视频精品| 国产精品美乳| 欧美日本在线| 91视频青青草| 四虎影视8848永久精品| 欧美va亚洲va香蕉在线| 国产乱人伦AV在线A| 国产美女在线观看| 欧美一区二区三区不卡免费| 国产乱子伦视频在线播放| 伊人中文网| 456亚洲人成高清在线| 国产午夜不卡| 狠狠v日韩v欧美v| 国产十八禁在线观看免费| 亚洲精品视频免费| 91免费国产在线观看尤物| 中字无码精油按摩中出视频| 国产成人无码播放| 亚洲国产午夜精华无码福利| 麻豆国产原创视频在线播放| 免费99精品国产自在现线| 精品国产黑色丝袜高跟鞋| 丰满人妻久久中文字幕| a天堂视频| 99在线免费播放| 国产亚洲成AⅤ人片在线观看| 国产自视频| 97人妻精品专区久久久久| 国产主播在线一区| 丰满人妻一区二区三区视频| hezyo加勒比一区二区三区| 国产男女免费完整版视频| 黄色成年视频| 久久窝窝国产精品午夜看片| 国产高清在线精品一区二区三区| 免费人成黄页在线观看国产| 国产一级在线播放| 茄子视频毛片免费观看| 亚洲天堂日韩在线| 国产精品手机在线播放| 国产精品久久久久久久久久久久| 久久综合国产乱子免费| 2022国产无码在线| 国产乱子伦视频在线播放| 久久精品无码一区二区日韩免费| 中日无码在线观看| 麻豆a级片| 91福利在线观看视频| 99久久免费精品特色大片| 色吊丝av中文字幕| 国产尤物jk自慰制服喷水| 国产91小视频| 手机成人午夜在线视频| 91免费国产在线观看尤物| 91www在线观看| 久久成人国产精品免费软件| 一级毛片网| 色哟哟国产精品一区二区| 国产99在线| 日韩中文欧美| 日本亚洲国产一区二区三区| 日韩国产精品无码一区二区三区| 国产精品无码在线看| 欧洲一区二区三区无码| 欧美不卡二区| 综合色在线| 2019国产在线| 国产精品高清国产三级囯产AV|