Web Service 用戶使用手冊(cè).doc_第1頁(yè)
Web Service 用戶使用手冊(cè).doc_第2頁(yè)
Web Service 用戶使用手冊(cè).doc_第3頁(yè)
Web Service 用戶使用手冊(cè).doc_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Web Service 用戶使用手冊(cè)1 概述Web service平臺(tái)是一套標(biāo)準(zhǔn),它定義了應(yīng)用程序如何在Web上實(shí)現(xiàn)互操作性??梢杂萌魏文阆矚g的語(yǔ)言,不同的平臺(tái)中編寫Web service ,而通過(guò)Web service的標(biāo)準(zhǔn)來(lái)對(duì)這些服務(wù)進(jìn)行查詢和訪問。Web客戶端Web 服務(wù)Corba 服務(wù)防火墻DB 服務(wù)Socket 服務(wù)WSDL以下是網(wǎng)絡(luò)拓?fù)鋱D:2 服務(wù)接口2.1 歷史數(shù)據(jù)服務(wù)接口介紹:1) 讀取各時(shí)間點(diǎn)上對(duì)應(yīng)的量測(cè)值,主要用在描繪曲線上。public TimeSerie ReadAtTime(long timeStamps, SetUp setups, ItemErrorHolder itemErrors )輸入:timeStamps:時(shí)間序列,Corba時(shí)間,單位是100納秒。Setups:量測(cè)對(duì)象序列,ResourceID或者是PathName。輸出:itemErrors:錯(cuò)誤信息,錯(cuò)誤的原因、ResourceID/PathName。TimeSerie:量測(cè)對(duì)象對(duì)應(yīng)的量測(cè)值,類型有double、int、string等。2) 讀取某一段時(shí)間的量測(cè)最大值、最小值、平均值,主要用于數(shù)據(jù)統(tǒng)計(jì)上。public TimeSerie ReadProcessed (TimeInterval interval, long sampleInterval, ProcessedRef itemRefs, ItemErrorHolder itemErrors )輸入:Interval:時(shí)間段,包含起始時(shí)間和截止時(shí)間,Corba時(shí)間,單位是100納秒。sampleInterval:時(shí)間間隔,單位是秒,等于0取得實(shí)時(shí)的最大值、最小值、平均值,大于0取得這些時(shí)間間隔點(diǎn)上對(duì)應(yīng)的最大值、最小值、平均值。輸出:itemErrors:錯(cuò)誤信息,錯(cuò)誤的原因、ResourceID/PathName。TimeSerie:量測(cè)對(duì)象對(duì)應(yīng)的量測(cè)值,類型有double、int、string等。2.2 圖形服務(wù)接口介紹:1) 取得圖形服務(wù)器上所有的圖形文件名。public String getGraphList ()輸入:無(wú)。輸出:圖形文件名的序列。2) 取得某一圖形文件的描述信息,例如:最后一次修改,文件大小等。public GraphDescLocal getGraphDesc(String GraphName)輸入:GraphName:圖形文件名。輸出:圖形文件信息:最后一次修改,文件大小等3) 取得某一圖形文件的內(nèi)容,主要用于下載圖形到本地。public byte getGraphData(String GraphName, boolean ReadFlag)輸入:GraphName:圖形文件名。ReadFlag:是否優(yōu)化處理。輸出:圖形文件的內(nèi)容,是二進(jìn)制值。2.3 實(shí)時(shí)服務(wù)接口介紹:1) 取得量測(cè)對(duì)象的實(shí)時(shí)值,主要用于實(shí)時(shí)數(shù)據(jù)的監(jiān)視上。public ItemStateSimpleIO_wsdl read(int data_source, ServerItemIdentification_wsdl ids, ItemErrorsHolder_wsdl errors)輸入:data_source:數(shù)據(jù)來(lái)源,來(lái)自程序內(nèi)存、RTU等。ids:量測(cè)資源對(duì)象信息序列,包括ResourceID/PathName、PropertyID。輸出:Errors:錯(cuò)誤信息,錯(cuò)誤的原因、ResourceID/PathName。ItemStateSimpleIO_wsdl:量測(cè)資源的當(dāng)前值,類型有double、int、string等。3 訪問方式服務(wù)端代碼:class MyService String Hello(String str);客戶端訪問Web service的方法如下:1) 代理客戶端這種方式比較簡(jiǎn)單,一般是根據(jù)Web Service廠家提供的工具先生成客戶端代理源碼,然后再根據(jù)編程規(guī)范,利用這些源碼編寫客戶端代碼。Axis1-2是Apache公司的Web Service開發(fā)包,在已知一個(gè)WSDL路徑下如下命令取得客戶端代理源碼:java -classpath %CLASSPATH% org.apache.axis.wsdl.WSDL2Java -p hsdaitemclient 8:8080/axis/services/MyService?wsdl生成如下四個(gè)文件:MyService.javaMyService_Service.java。MyService_ServiceLocator.javaMyService_SoapBindingStub.java實(shí)現(xiàn)代碼,調(diào)用Web服務(wù)的Hello函數(shù)接口:MyService_Service service = new client. MyService_ServiceLocator (); client. MyService client = service.getMyService(); String retValue=client.Hello (zhangsan);還有一些別的Web Service開發(fā)包,例如:jwsdp-2.0,利用wscompile和wsdeploy命令進(jìn)行Web Service的發(fā)布和客戶端開發(fā)。2) 硬編碼這種方式是比較復(fù)雜的,就是對(duì)Web Service非常了解,利用Soap包,自己封裝接口調(diào)用的輸入,自己解析返回值,代碼量相當(dāng)?shù)拇?。例如一個(gè)調(diào)用Hello的代碼(C+):ISoapSerializerPtr m_spSerializer;ISoapConnectorPtr m_spConnector;/ Begin the message.m_spConnector-PropertySoapAction = MyService;m_spConnector-BeginMessage();m_spSerializer-Init(_variant_t(IUnknown*)m_spConnector-InputStream);/ Build the SOAP Message.m_spSerializer-StartEnvelope(,);m_spSerializer-StartBody();m_spSerializer-StartElement(Hello,);m_spSerializer-StartElement(str,);m_spSerializer-WriteString(_bstr_t(str.local8Bit().data();m_spSerializer-EndElement();m_spSerializer-EndElement();m_spSerializer-EndBody();m_spSerializer-EndEnvelope();/ Send the message to the XML Web service.m_spConnector-EndMessage();/ Read the responseISoapReaderPtr spReader;HRESULT hr = spReader.CreateInstance(_uuidof(SoapReader30);if (hr = CO_E_NOTINITIALIZED)CoInitialize(NULL);hr = spReader.CreateInstance(_uuidof(SoapReader30);/ Connect the reader to the output stream of the connector object.spReader-Load(_variant_t(IUnknown*)m_spConnector-OutputStream), );/ Get the result.b = (QString(spR

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論