許鵬
(合肥職業(yè)技術(shù)學(xué)院,安徽 合肥 238000)
基于Web Services技術(shù)的精品課程網(wǎng)絡(luò)資源整合研究
許鵬
(合肥職業(yè)技術(shù)學(xué)院,安徽 合肥 238000)
針對(duì)精品課程網(wǎng)絡(luò)資源在分布式環(huán)境中的共享問題,提出運(yùn)用Web Services技術(shù)來整合跨平臺(tái)精品課程網(wǎng)絡(luò)資源,利用Web Services來設(shè)計(jì)整合和搜尋機(jī)制,通過標(biāo)準(zhǔn)的接口實(shí)現(xiàn)應(yīng)用系統(tǒng)的互操作,進(jìn)而整合并共享各精品課程管理系統(tǒng)之間的優(yōu)質(zhì)資源。
分布式環(huán)境;Web Services;精品課程;資源整合
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展與普及,利用Internet與Intranet可以將遠(yuǎn)端的精品課程網(wǎng)絡(luò)資源整合到實(shí)際的課程教學(xué)中。將數(shù)字化課程資源嵌入到精品課程管理系統(tǒng)(Excellent Course Management System,ECMS)中,教師在授課時(shí)可通過校園網(wǎng)來查找所需資源為課程教學(xué)服務(wù),不需要攜帶厚重的書本及教輔材料,此外學(xué)生也可突破時(shí)空限制,通過精品課程管理系統(tǒng)進(jìn)行在線學(xué)習(xí)或跨學(xué)科的輔修,以達(dá)到多元化學(xué)習(xí)的目標(biāo)。
目前的精品課程網(wǎng)絡(luò)資源雖然可以利用共享式組件參考模型(Sharable Context Object Reference Model,SCORM)[1]作為設(shè)計(jì)的標(biāo)準(zhǔn)來解決資源共享與分享的問題,國(guó)內(nèi)外高校也著力于研發(fā)符合SCORM標(biāo)準(zhǔn)的精品課程管理系統(tǒng),廣大師生也希望通過單一窗口就可以訪問各精品課程管理系統(tǒng)上的網(wǎng)絡(luò)資源,但由于每個(gè)ECMS所建立的時(shí)間點(diǎn)不一,設(shè)計(jì)時(shí)所考慮的因素也不盡相同,使得各自建構(gòu)的ECMS,所使用的硬件平臺(tái)及操作系統(tǒng)各異,因此難以利用單一的窗口就能使用所有存儲(chǔ)于不同ECMS上的網(wǎng)絡(luò)資源。有鑒于此,各項(xiàng)以整合共享資源為目標(biāo)的中間件應(yīng)運(yùn)而生,例如:Microsoft的COM、Sun的RMI及OMG的CORBA等。然而目前這些分布式應(yīng)用程序所使用的組件對(duì)象技術(shù),皆有自己獨(dú)特的一套標(biāo)準(zhǔn),客戶端必須依據(jù)特定的技術(shù)與規(guī)范來開發(fā),不利于資源共享,加上校園網(wǎng)中有防火墻的保護(hù)措施,只能開啟少許的端口支持該服務(wù),因此DCOM、CORBA、Java RMI的專屬協(xié)議并不適合在Internet上的應(yīng)用開發(fā)。因此迫切需要一套通用分布式應(yīng)用程序的標(biāo)準(zhǔn),來實(shí)現(xiàn)跨平臺(tái)共享網(wǎng)絡(luò)資源的目的。
Web Services是異構(gòu)平臺(tái)互相整合的解決方案之一,可以讓各種平臺(tái)、語言所開發(fā)出來的應(yīng)用程序,通過一個(gè)統(tǒng)一的架構(gòu)注冊(cè)、發(fā)布,讓服務(wù)需求者獲得各種平臺(tái)、語言所開發(fā)的應(yīng)用程序,但卻不用去考慮它的實(shí)現(xiàn)細(xì)節(jié)。完全是以一個(gè)被服務(wù)者的角色去使用這些服務(wù)。利用Web Services技術(shù)來開發(fā)分布式精品課程管理系統(tǒng),除了符合SCORM標(biāo)準(zhǔn)外,主要著重于建立不同精品課程管理系統(tǒng)間的互通機(jī)制,讓學(xué)習(xí)者通過統(tǒng)一的學(xué)習(xí)入口,存取其他精品課程管理系統(tǒng)的網(wǎng)絡(luò)資源。通過設(shè)計(jì)學(xué)習(xí)行事歷與學(xué)習(xí)備忘錄功能,讓學(xué)習(xí)計(jì)劃表、通過E-Mail與短信主動(dòng)提醒使用者學(xué)習(xí),在學(xué)習(xí)后提供學(xué)習(xí)歷史記錄,讓學(xué)習(xí)者在使用各ECMS中的資源后,記錄所使用過的資源內(nèi)容的歷史記錄,來達(dá)到最佳學(xué)習(xí)成效。而系統(tǒng)管理員可以對(duì)不同精品課程系統(tǒng)的學(xué)習(xí)者的訪問記錄進(jìn)行深入的分析比較。
Web Services是W3C[2]所定義的一套開放式網(wǎng)絡(luò)協(xié)議存取的應(yīng)用程序組件,提供一種軟件服務(wù)的接口,通過統(tǒng)一資源標(biāo)識(shí)符 (Uniform Resource Identification,URI)來標(biāo)示位置的軟件系統(tǒng),Web服務(wù)應(yīng)用程序間的接口及鏈接均可使用XML來進(jìn)行描述,并且通過SOAP(Simple Object Access Protocol)協(xié)議進(jìn)行信息封裝與傳遞,與其它應(yīng)用程序?qū)崿F(xiàn)互操作,同時(shí)亦可被其它的軟件系統(tǒng)所查詢,提供了異構(gòu)系統(tǒng)之間互相溝通的信息平臺(tái)。由于Web Services具有程序與程序互相溝通與整合的功能,使得信息網(wǎng)絡(luò)服務(wù)由“Browser to Application Program”,只通過HTML呈現(xiàn)網(wǎng)絡(luò)服務(wù)的Web 1.0時(shí)期,演進(jìn)到目前“Application Program to Application Program”,各系統(tǒng)平臺(tái)間通過XML進(jìn)行電子數(shù)據(jù)交換的Web 2.0時(shí)代[3]。客戶端可以利用應(yīng)用程序通過URL來指定存取網(wǎng)絡(luò)上任一服務(wù)器所提供Web服務(wù),不論對(duì)方是使用何種應(yīng)用程序或是操作系統(tǒng),雙方只需遵循標(biāo)準(zhǔn)的SOAP封裝消息即可交換信息互取所需。Web Services體系結(jié)構(gòu)基于三種角色,如圖1所示,包括:(1)服務(wù)注冊(cè)中心:注冊(cè)已經(jīng)發(fā)布的Web Services,對(duì)其進(jìn)行分類,并提供檢索服務(wù);(2)服務(wù)提供者:提供服務(wù)并對(duì)服務(wù)請(qǐng)求進(jìn)行響應(yīng);(3)服務(wù)請(qǐng)求者:某種Client或應(yīng)用程序,在internet上搜尋及使用Web Services。
Web Services應(yīng)用程序的執(zhí)行模式與流程可大致分為四大部分,包括搜尋、發(fā)現(xiàn)、認(rèn)知、溝通等。Web Services以SOAP(Simple Object Access Protocol)協(xié)議來存取服務(wù)與交換消息,并使用WSDL(Web Service Description Language)來描述提供網(wǎng)絡(luò)服務(wù)者通過UDDI(Universal Description Discovery Integration)網(wǎng)絡(luò)服務(wù)注冊(cè)機(jī)制,讓服務(wù)提供商注冊(cè),讓服務(wù)需求者可通過UDDI找到所需的服務(wù),各部份功能如下敘述:Services進(jìn)行注冊(cè)和搜索,由Microsoft,IBM等多家知名廠家共同力推的Web Service注冊(cè)與搜尋機(jī)制。讓服務(wù)提供者注冊(cè)所要公開的服務(wù)信息;也提供服務(wù)請(qǐng)求者一個(gè)搜尋的機(jī)制,以取得和Web Service溝通的相關(guān)信息。
雖然在精品課程網(wǎng)絡(luò)資源的設(shè)計(jì)上可利用SCORM來規(guī)范,使其達(dá)到共享與再利用等優(yōu)點(diǎn),但在精品課程網(wǎng)絡(luò)管理平臺(tái)之間卻缺乏了一套共享的標(biāo)準(zhǔn),使平臺(tái)間數(shù)據(jù)溝通傳遞困難,無法讓使用者通過單一平臺(tái)獲得所有的精品課程網(wǎng)絡(luò)資源。而通過Web Services的探索性(Discovery)與整合性(Integration),可以將不同的ECMS整合在一起,由UDDI服務(wù)器讓使用者通過這個(gè)窗口,獲取更多樣化的精品課程網(wǎng)絡(luò)資源;系統(tǒng)開發(fā)者則可利用這個(gè)窗口開發(fā)各種在線學(xué)習(xí)平臺(tái),使精品課程網(wǎng)絡(luò)資源共享最優(yōu)化。
通過對(duì)Web Services的概念與技術(shù)特點(diǎn)的分析,提出以Web Services為基礎(chǔ)的精品課程網(wǎng)絡(luò)資源整合架構(gòu)。采用J2SDK、Java Web Services Developer Pack(JWSDP)及JDOM作為開發(fā)工具來構(gòu)建系統(tǒng)。通過UDDI服務(wù)器來發(fā)布各精品課程管理系統(tǒng)檢索網(wǎng)絡(luò)資源服務(wù)的信息,用戶可以輕易通過單一接口(如瀏覽器)查詢異構(gòu)數(shù)據(jù)庫系統(tǒng)間所提供的整合精品課程網(wǎng)絡(luò)資源的檢索服務(wù)。各系統(tǒng)只需自行依據(jù)所使用系統(tǒng)編寫所提供服務(wù)及位置的WSDL文件,便可以將服務(wù)整合在此架構(gòu)下。
系統(tǒng)架構(gòu)可分為三大模塊,如圖2所示,分別為XML Schema Parser Module、UDDI Register Module與Search Mechanism Module。以下說明上述幾個(gè)模塊的設(shè)計(jì)方式并探討相關(guān)問題的解決方法。
本架構(gòu)中利用Java APIs for XML Registries (JAXR)來定義存取注冊(cè)及查詢UDDI的相關(guān)機(jī)制。JAXR提供一組能夠獨(dú)立于底層注冊(cè)機(jī)制的API,可讓XML注冊(cè)抽象化,可以提供ebXML registry注冊(cè)和UDDI的支持。利用JAXP能夠構(gòu)建各種不同的客戶端程序。使用者通過瀏覽器連上UDDI服務(wù)器可查詢封裝的ECMS Web Services,并且取得這些ECMS Web服務(wù)的WSDL文件,便可以通過其Port位置及服務(wù)鏈接(binding)取得查詢結(jié)果,再依據(jù)查詢結(jié)果及各ECMS所提供XSLT樣版轉(zhuǎn)換來呈現(xiàn)HTML格式,便可以在瀏覽器上看到整合查詢的信息。
在需求分析的基礎(chǔ)上,立足前述框架,選擇合適的開發(fā)工具,采用模塊化的開發(fā)方法開發(fā)基于Web Services技術(shù)的精品課程網(wǎng)絡(luò)資源整合測(cè)試平臺(tái),具體的開發(fā)方法如下。
網(wǎng)絡(luò)服務(wù)描述語言(Web Services Description Language,WSDL)可以用來描述Web Services所提供的功能與使用方法,將系統(tǒng)所提供網(wǎng)絡(luò)服務(wù)規(guī)范化。遠(yuǎn)程只要使用XML-RPC或SOAP協(xié)議即可與Web服務(wù)進(jìn)行溝通。在WSDL1.1的規(guī)范[7]中,共分為服務(wù)(Service)、服務(wù)端點(diǎn)(Port)、數(shù)據(jù)類型 (Type)、消息 (Message)、接口定義(Port Type)及服務(wù)綁定(Binding)六個(gè)部分,其中服務(wù)端點(diǎn)是提供Web服務(wù)的端點(diǎn)位置,將ECMS提供的網(wǎng)絡(luò)資源查詢服務(wù)位置及服務(wù)名稱撰寫于此。
在信息與接口定義部分則是分別說明要傳輸?shù)男畔⒂心男┘岸xWeb Services傳送與接收的作業(yè),將網(wǎng)絡(luò)資源檢索需要傳遞的關(guān)鍵詞定義為字符串型態(tài)傳送到Web服務(wù)進(jìn)行處理,其中ContextQuery是接收查詢關(guān)鍵詞String_Query后進(jìn)行查詢消息的函數(shù)名稱,Response是傳回查詢結(jié)果的函數(shù)名稱,WSDL文件片段如圖3、4所示。ECMS只需通過WSDL將數(shù)字化網(wǎng)絡(luò)資源查詢服務(wù)撰寫于其中,便可通過Web Services平臺(tái)提供給使用者進(jìn)行查詢。
學(xué)習(xí)行事歷與學(xué)習(xí)備忘錄的設(shè)計(jì)方式是利用JDOM(Java DOM)作為開發(fā)的工具。JDOM是對(duì)XML數(shù)據(jù)存取、處理及輸出的Java組件,方便Java程序設(shè)計(jì)師來開發(fā)與設(shè)計(jì)XML數(shù)據(jù)文件。JDOM采取直覺的方式來模型化將XML文件建立成為一個(gè)Java對(duì)象,且用Class來表達(dá)所有XML文件中諸如元素、屬性、處理指令的建構(gòu)方塊。JDOM與現(xiàn)存的標(biāo)準(zhǔn)如SAX(Simple API for XML)與DOM(Document Object Model)亦相容,但JDOM卻比SAX和DOM表現(xiàn)的讓人更為親近。JDOM從現(xiàn)存的API擷取其優(yōu)點(diǎn),同時(shí)也擴(kuò)增一組新的類別和接口,此外,JDOM也可以經(jīng)現(xiàn)存的DOM或SAX來源當(dāng)做輸入,亦可輸出成DOM或SAX的接收組件。
利用JDOM將使用者設(shè)定的行事歷文件轉(zhuǎn)換成XML窗體,以取出用戶所設(shè)定的學(xué)習(xí)日期、通知方式等字段的內(nèi)容,進(jìn)行相關(guān)處理,包括對(duì)學(xué)習(xí)者的學(xué)習(xí)評(píng)量進(jìn)行個(gè)人學(xué)習(xí)特性曲線分析圖與個(gè)人學(xué)習(xí)狀況歷史曲線圖的繪出。最后,再取出使用者所填入的E-Mail與手機(jī)號(hào)碼的字段,利用簡(jiǎn)訊組件發(fā)送手機(jī)簡(jiǎn)訊來通知用戶進(jìn)行在線學(xué)習(xí),程序片段如下。
系統(tǒng)部署后,使用者可以利用UDDI服務(wù)器的搜尋接口,輸入欲查找的資源關(guān)鍵詞,通過系統(tǒng)的搜尋機(jī)制,UDDI服務(wù)器會(huì)回傳和輸入的關(guān)鍵詞相同的資源信息,接著通過超鏈接即可取得所需的參考數(shù)據(jù)。如圖3所示,在瀏覽器中輸入“J2EE%”,系統(tǒng)將會(huì)回傳以J2EE為前置字符串的網(wǎng)絡(luò)資源信息(如圖5所示)。
通過測(cè)試我們可以看出通過查詢窗口輸入待查找網(wǎng)絡(luò)資源名稱中包含的關(guān)鍵詞就可以返回相應(yīng)的資源信息,開發(fā)人員可以進(jìn)一步對(duì)系統(tǒng)的功能進(jìn)行完善,實(shí)現(xiàn)信息資源的下載、瀏覽、存儲(chǔ)等功能。
互聯(lián)網(wǎng)時(shí)代,精品課程網(wǎng)絡(luò)資源整合與共享是當(dāng)前教育界研究的熱點(diǎn),其中大部份仍以單一平臺(tái)功能和資源的研究為主,少有利用分布式環(huán)境整合技術(shù)將不同的精品課程管理系統(tǒng)的網(wǎng)絡(luò)資源進(jìn)行整合,提高資源的共享率。本文利用Web Services技術(shù)構(gòu)建的一套搜尋與整合機(jī)制整合不同的精品課程管理平臺(tái)上的網(wǎng)絡(luò)資源,來讓使用者可以運(yùn)用單一的接口通過Internet對(duì)不同的平臺(tái)進(jìn)行資源的搜尋與利用,使平臺(tái)與平臺(tái)之間的網(wǎng)絡(luò)資源能夠共享使用,避免相同的資源重復(fù)開發(fā)而造成浪費(fèi)。學(xué)習(xí)者可以突破時(shí)空的限制,主動(dòng)尋找符合自身需求的網(wǎng)絡(luò)資源為學(xué)習(xí)服務(wù)。同時(shí)這種Web Services整合精品課程網(wǎng)絡(luò)資源機(jī)制,具有很大的推廣價(jià)值,可以擴(kuò)展教學(xué)資源的整合與共享的范圍。
[1]李輝,黃堂紅.基于SCORM規(guī)范的精品課程網(wǎng)絡(luò)資源庫的設(shè)計(jì)和實(shí)現(xiàn)[J].中國(guó)教育技術(shù)裝備,2007,(4)∶88.
[2]World Wide Web Consortium,http://www.w3.org/TR/ws-arch/
[3]Wang Lin,Yang Bo&Gao Yanli.Internet Application Technologies in Web2.0 Era[J].ZTE Communications,2008,(4).
[4]楊冬.Web服務(wù)中若干問題的研究[D].長(zhǎng)春:吉林大學(xué),2014.
[5]顧寧,劉家茂,柴曉路.Web Services原理與研發(fā)實(shí)踐[M].北京:機(jī)械工業(yè)出版社,2006∶120-154.
[6]UDDI Technical White Paper,http://www.uddi.org/pubs/_UDDI_Technical_White_Paper.pdf.
[7]Web Services Description Language(WSDL),http://ww.w3.org/TR/wsdl/.
RESEARCH ON THE INTEGRATION OF EXCELLENT COURSE NETWORK RESOURCES BASED ON WEB SERVICES
XU Peng
(Hefei Vocational and Technical College,Hefei Anhui 238000)
In response to the problem of sharing excellent course network resources in the distributed environment,this paper puts forward integrating the excellent course network resources of cross-platform to make use of Web Services technology to design integration and search mechanism.The interactive operation of application system is realized by standard interface to further integrate and share excellent resources among excellent course management systems.
distribution environment;Web Services;excellent course;resource integration.
TP311.1
A
1672-2868(2015)06-0039-06
責(zé)任編輯:陳 侃
2015-10-05
許鵬(1973-),男,安徽廬江人。合肥職業(yè)技術(shù)學(xué)院,高級(jí)工程師。研究方向:網(wǎng)絡(luò)工程與軟件開發(fā)。