RFID開發(fā)介紹—Enterprise Server
在該系列文章的前面,分別介紹了RFID概述和BEA WebLogic RFID Edge Server開發(fā)介紹。接下來我們來看BEA WebLogic RFID Enterprise Server,Enterprise Server提供管理和協(xié)調(diào)大量、部署在多個(gè)場(chǎng)所的RFID的服務(wù)、資源和API。它將在企業(yè)邊緣采集到的實(shí)時(shí)RFID數(shù)據(jù)與企業(yè)應(yīng)用聯(lián)系了起來,使將RFID數(shù)據(jù)共享給合作伙伴成為可能。
一、產(chǎn)品安裝以及配置
從BEA的產(chǎn)品下載網(wǎng)站下載產(chǎn)品安裝介質(zhì)rfid_enterprise201_win32.exe:
http://commerce.bea.com/showallversions.jsp?family=RFIDENT
安裝
a) 歡迎頁(yè)面,直接選擇下一步;
b) BEA License Agreement頁(yè)面,選擇同意,下一步;
c) 選擇安裝目錄,需要選擇一個(gè)已經(jīng)安裝了Weblogic Server 9.2的產(chǎn)品目錄,因?yàn)镋nterprise Server 2.0是運(yùn)行在Weblogic Server 9.2之上的。下一步;
d) 選擇生成快捷方式的位置,下一步;
e) 開始安裝
f) 安裝完成
配置
a) 運(yùn)行Enterprise Server配置向?qū)В?ES_HOME%\common\bin\ config.cmd)
b) 歡迎頁(yè)面,選擇創(chuàng)建一個(gè)新的WebLogic domain;
c) 選擇域資源,建議選擇支持全部WebLogic RFID Enterprise Server組件
d) 填寫管理員用戶名和密碼,建議用weblogic\ weblogic
e) 配置服務(wù)器啟動(dòng)模式和JDK,默認(rèn),下一步;
f) 自定義環(huán)境和服務(wù)設(shè)置,選擇Yes,下一步;
g) 監(jiān)聽地址和端口,默認(rèn),下一步;
h) 被管服務(wù)器,默認(rèn),下一步;
i) 機(jī)器,默認(rèn),下一步;
j) Kodo,在該頁(yè)選擇(automatic initialization of the database),其他默認(rèn),下一步;
k) JMS 文件存儲(chǔ),默認(rèn),下一步;
l) 選擇位置和名稱,創(chuàng)建新域。
二、概念介紹
WebLogic RFID Enterprise Server處理來自RFID技術(shù)標(biāo)簽數(shù)據(jù),增加業(yè)務(wù)方面的信息,并提供自定義的報(bào)告給商業(yè)伙伴。Enterprise Server可以處理從多個(gè)來源的數(shù)據(jù),并把這種原始數(shù)據(jù)變成有用的信息,企業(yè)由此可以達(dá)到業(yè)務(wù)上的追蹤和決策的目的。
事件服務(wù)(Event Service)
運(yùn)行在邊緣服務(wù)器(例如WebLogic RFID Edge Server)上的應(yīng)用給Enterprise Server發(fā)送標(biāo)簽事件數(shù)據(jù)(Event Data)。這些數(shù)據(jù)提供了RFID標(biāo)簽的基本信息,例如讀卡的時(shí)間和地點(diǎn),根據(jù)不同的事件類型,可能會(huì)包含更多的信息。Enterprise Server的事件服務(wù)接受來自邊緣服務(wù)器(例如WebLogic RFID Edge Server)的數(shù)據(jù),存儲(chǔ),并且提供查詢接口。
主數(shù)據(jù)服務(wù)(master data service)
使用主數(shù)據(jù)服務(wù),授權(quán)用戶可以創(chuàng)建主數(shù)據(jù)(master data)。主數(shù)據(jù)是指人類可讀、 并包含了商業(yè)上下文方面的信息,可以與事件數(shù)據(jù)(Event Data)進(jìn)行關(guān)聯(lián)。這種關(guān)聯(lián)(Event Data與master data)使得信息編碼數(shù)據(jù)(Event Data)對(duì)人更有意義(變得具有可讀性),可以作為更加有用的商業(yè)建模工具。主數(shù)據(jù)管理控制臺(tái)(Master Data Administration Console)提供了一個(gè)管理主數(shù)據(jù)服務(wù)的圖形用戶界面。
數(shù)據(jù)交換服務(wù)(data exchange service)
數(shù)據(jù)交換服務(wù)處理查詢并將結(jié)果發(fā)送到內(nèi)部或外部目的地。授權(quán)用戶可以創(chuàng)建一個(gè)對(duì)內(nèi)部或外部客戶端的訂閱(subscription)。每個(gè)訂閱包括一系列的查詢參數(shù)、查詢運(yùn)行的時(shí)間和地點(diǎn)、已經(jīng)報(bào)告要發(fā)送到的目的地。查詢訂閱管理控制臺(tái)(Query Subscription Administration Console)提供了一個(gè)管理數(shù)據(jù)交換服務(wù)的圖形用戶界面。
報(bào)表服務(wù)(Reporting Service)
報(bào)表服務(wù)提供訪問事件數(shù)據(jù)和主數(shù)據(jù)報(bào)表的圖形用戶界面。Enterprise Server提供四種類型的報(bào)表:歷史信息、丟失資產(chǎn)、停留時(shí)間和運(yùn)輸時(shí)間報(bào)表。
下面是這些服務(wù)之間的關(guān)聯(lián)關(guān)系:
三、Edge Server配置
正如前文所述,Enterprise Server接受來自Edge Server的Event Data,所以在開始使用Enterprise Server之前,先需要配置Edge Server的消息發(fā)送通告,該配置是通過Edge Server的工作流模塊實(shí)現(xiàn)的。
配置JMS通告
a) 打開<edge_home>/etc/edge.props文件,修改以下屬性為可用
b) 打開<edge_home>/etc/jms.options 文件,設(shè)置環(huán)境變量
c) 復(fù)制<edge_home>/samples/JMSSamples/BEA/etc/naming.props文件到<edge_home>/etc/naming.props
創(chuàng)建消息通告模塊
這部分的配置,讀者可以通過從Edge Server的管理控制臺(tái)導(dǎo)入文章中附帶的edge.config.xml文件來實(shí)現(xiàn),其具體配置步驟如下:
a) 全部建好的工作流模塊應(yīng)該如下圖所示:
b) 新建LED顯示如下:
c) 新建DirectionalPortal如下:
其中的ECReport的創(chuàng)建方法,請(qǐng)參見該系列文章的《RFID開發(fā)介紹—Edge Server 》,按照文中的操作步驟,分別創(chuàng)建兩個(gè)ECSpec ,分別命名為BidirectionalPortal-Point1-ECSpec 和BidirectionalPortal-Point2-ECSpec,并且在其中加入AdditionReport和DeletionReport。最后將兩個(gè)ECSpec分別加入訂閱到BidirectionalPortal。
d) 新建DirectionalWFMessageNotifier如下:
其中observe-event-sap-aii.xsl文件參見文章后面的資源中。
四、使用Enterprise Server
1. 啟動(dòng)Enterprise Server
a) 運(yùn)行PointBase :
通過運(yùn)行%weblogic92_Home%\common\bin\ startPointBase.cmd腳本
b) 運(yùn)行第一步中建立的Enterprise Server Domain:
通過運(yùn)行%enterprise20_domain%\bin\startWebLogic.cmd
2. 訪問Enterprise Server
接下來就可以通過下面的URL訪問Enterprise Server了:
http://localhost:7001/enterprise
登錄的用戶名和密碼是與創(chuàng)建過程中指定的,默認(rèn)weblogic/weblogic。登錄后可以看到如下界面:
通過這個(gè)界面的連接,就可以進(jìn)入相應(yīng)的控制臺(tái),使用在第二步中介紹的各種服務(wù)。例如通過Query Subscription Administration Console察看我們?cè)诘谌街袆?chuàng)建的工作流模塊發(fā)送過來的Event Data,通過Master Data Administration Console輸入Master Data。
3. 使用Edge Server產(chǎn)生Event Data
將模擬讀卡器的兩個(gè)天線的EPC都勾掉,并且將兩個(gè)天線的EPC值設(shè)置為一樣的,如下:
把天線一的EPC2選中,然后勾掉;對(duì)天線二的EPC2進(jìn)行同樣的操作。察看Edge Server命令行,可以看到如下結(jié)果:
4. 察看Enterprise Server報(bào)表
進(jìn)入Enterprise Server Reporting Service控制臺(tái),看到如下界面:
直接點(diǎn)擊”Run Report”,得到如下結(jié)果:
5. 如何有讀者想進(jìn)一步了解Enterprise Server對(duì)這些數(shù)據(jù)的存儲(chǔ)情況,也可以通過PointBase Console查看數(shù)據(jù)庫(kù)中的數(shù)據(jù)。連接數(shù)據(jù)庫(kù)要用到的參數(shù)如下:
DriverName: com.pointbase.jdbc.jdbcUniversalDriver
ConnectionURL: jdbc:pointbase:embedded:ent_server;new
UserName: es
Password: es
對(duì)于上面的操作,可以通過執(zhí)行“select * from epcis_event”查詢,察看數(shù)據(jù)庫(kù)對(duì)Event Data的持久存儲(chǔ)情況,如下所示:
6. 重新配置Edge Server
打開Edge Server管理控制臺(tái),修改DirectionalPortal的配置,將object event destination output的值剪切到Aggregation output destination,如下所示:
修改模擬讀卡器的兩個(gè)天線的EPC值如下所示:
把天線一的所有的EPC選中,然后都勾掉;對(duì)天線二的EPC進(jìn)行同樣的操作。察看Edge Server命令行,可以看到如下結(jié)果(注意,輸出結(jié)果較長(zhǎng),下面只列出其中一部分):
7. 察看Enterprise Server報(bào)表
進(jìn)入Enterprise Server Reporting Service控制臺(tái),在生成報(bào)表選項(xiàng)的“Include”位置只選擇AGGREGATION,成生如下報(bào)表:
此外,可以將EPCIS events 捕獲到EPCISCapture queue,其需要的配置的地方有工作流模塊的消息通告目的URI和XSLT的設(shè)置。由于文章篇幅限制,在這里不再具體配置。讀者可以自行察看Enterprise Server的電子文檔,來參考實(shí)現(xiàn)這部分功能。其URL如下:http://edocs.bea.com/rfid/enterprise_server/docs20/index.html