RFID開發介紹—Enterprise Server
在該系列文章的前面,分別介紹了RFID概述和BEA WebLogic RFID Edge Server開發介紹。接下來我們來看BEA WebLogic RFID Enterprise Server,Enterprise Server提供管理和協調大量、部署在多個場所的RFID的服務、資源和API。它將在企業邊緣采集到的實時RFID數據與企業應用聯系了起來,使將RFID數據共享給合作伙伴成為可能。
一、產品安裝以及配置
從BEA的產品下載網站下載產品安裝介質rfid_enterprise201_win32.exe:
http://commerce.bea.com/showallversions.jsp?family=RFIDENT
安裝
a) 歡迎頁面,直接選擇下一步;
b) BEA License Agreement頁面,選擇同意,下一步;
c) 選擇安裝目錄,需要選擇一個已經安裝了Weblogic Server 9.2的產品目錄,因為Enterprise Server 2.0是運行在Weblogic Server 9.2之上的。下一步;
d) 選擇生成快捷方式的位置,下一步;
e) 開始安裝
f) 安裝完成
配置
a) 運行Enterprise Server配置向導(%ES_HOME%\common\bin\ config.cmd)
b) 歡迎頁面,選擇創建一個新的WebLogic domain;
c) 選擇域資源,建議選擇支持全部WebLogic RFID Enterprise Server組件
d) 填寫管理員用戶名和密碼,建議用weblogic\ weblogic
e) 配置服務器啟動模式和JDK,默認,下一步;
f) 自定義環境和服務設置,選擇Yes,下一步;
g) 監聽地址和端口,默認,下一步;
h) 被管服務器,默認,下一步;
i) 機器,默認,下一步;
j) Kodo,在該頁選擇(automatic initialization of the database),其他默認,下一步;
k) JMS 文件存儲,默認,下一步;
l) 選擇位置和名稱,創建新域。
二、概念介紹
WebLogic RFID Enterprise Server處理來自RFID技術標簽數據,增加業務方面的信息,并提供自定義的報告給商業伙伴。Enterprise Server可以處理從多個來源的數據,并把這種原始數據變成有用的信息,企業由此可以達到業務上的追蹤和決策的目的。
事件服務(Event Service)
運行在邊緣服務器(例如WebLogic RFID Edge Server)上的應用給Enterprise Server發送標簽事件數據(Event Data)。這些數據提供了RFID標簽的基本信息,例如讀卡的時間和地點,根據不同的事件類型,可能會包含更多的信息。Enterprise Server的事件服務接受來自邊緣服務器(例如WebLogic RFID Edge Server)的數據,存儲,并且提供查詢接口。
主數據服務(master data service)
使用主數據服務,授權用戶可以創建主數據(master data)。主數據是指人類可讀、 并包含了商業上下文方面的信息,可以與事件數據(Event Data)進行關聯。這種關聯(Event Data與master data)使得信息編碼數據(Event Data)對人更有意義(變得具有可讀性),可以作為更加有用的商業建模工具。主數據管理控制臺(Master Data Administration Console)提供了一個管理主數據服務的圖形用戶界面。
數據交換服務(data exchange service)
數據交換服務處理查詢并將結果發送到內部或外部目的地。授權用戶可以創建一個對內部或外部客戶端的訂閱(subscription)。每個訂閱包括一系列的查詢參數、查詢運行的時間和地點、已經報告要發送到的目的地。查詢訂閱管理控制臺(Query Subscription Administration Console)提供了一個管理數據交換服務的圖形用戶界面。
報表服務(Reporting Service)
報表服務提供訪問事件數據和主數據報表的圖形用戶界面。Enterprise Server提供四種類型的報表:歷史信息、丟失資產、停留時間和運輸時間報表。

下面是這些服務之間的關聯關系:

三、Edge Server配置
正如前文所述,Enterprise Server接受來自Edge Server的Event Data,所以在開始使用Enterprise Server之前,先需要配置Edge Server的消息發送通告,該配置是通過Edge Server的工作流模塊實現的。
配置JMS通告
a) 打開<edge_home>/etc/edge.props文件,修改以下屬性為可用 
b) 打開<edge_home>/etc/jms.options 文件,設置環境變量 
c) 復制<edge_home>/samples/JMSSamples/BEA/etc/naming.props文件到<edge_home>/etc/naming.props
創建消息通告模塊
這部分的配置,讀者可以通過從Edge Server的管理控制臺導入文章中附帶的edge.config.xml文件來實現,其具體配置步驟如下:
a) 全部建好的工作流模塊應該如下圖所示: 
b) 新建LED顯示如下: 

c) 新建DirectionalPortal如下: 

其中的ECReport的創建方法,請參見該系列文章的《RFID開發介紹—Edge Server 》,按照文中的操作步驟,分別創建兩個ECSpec ,分別命名為BidirectionalPortal-Point1-ECSpec 和BidirectionalPortal-Point2-ECSpec,并且在其中加入AdditionReport和DeletionReport。最后將兩個ECSpec分別加入訂閱到BidirectionalPortal。
d) 新建DirectionalWFMessageNotifier如下: 
其中observe-event-sap-aii.xsl文件參見文章后面的資源中。
四、使用Enterprise Server
1. 啟動Enterprise Server
a) 運行PointBase :
通過運行%weblogic92_Home%\common\bin\ startPointBase.cmd腳本
b) 運行第一步中建立的Enterprise Server Domain:
通過運行%enterprise20_domain%\bin\startWebLogic.cmd
2. 訪問Enterprise Server
接下來就可以通過下面的URL訪問Enterprise Server了:
http://localhost:7001/enterprise
登錄的用戶名和密碼是與創建過程中指定的,默認weblogic/weblogic。登錄后可以看到如下界面: 
通過這個界面的連接,就可以進入相應的控制臺,使用在第二步中介紹的各種服務。例如通過Query Subscription Administration Console察看我們在第三步中創建的工作流模塊發送過來的Event Data,通過Master Data Administration Console輸入Master Data。
3. 使用Edge Server產生Event Data
將模擬讀卡器的兩個天線的EPC都勾掉,并且將兩個天線的EPC值設置為一樣的,如下: 
把天線一的EPC2選中,然后勾掉;對天線二的EPC2進行同樣的操作。察看Edge Server命令行,可以看到如下結果: 
4. 察看Enterprise Server報表
進入Enterprise Server Reporting Service控制臺,看到如下界面: 
直接點擊”Run Report”,得到如下結果: 
5. 如何有讀者想進一步了解Enterprise Server對這些數據的存儲情況,也可以通過PointBase Console查看數據庫中的數據。連接數據庫要用到的參數如下:
DriverName: com.pointbase.jdbc.jdbcUniversalDriver
ConnectionURL: jdbc:pointbase:embedded:ent_server;new
UserName: es
Password: es
對于上面的操作,可以通過執行“select * from epcis_event”查詢,察看數據庫對Event Data的持久存儲情況,如下所示: 
6. 重新配置Edge Server
打開Edge Server管理控制臺,修改DirectionalPortal的配置,將object event destination output的值剪切到Aggregation output destination,如下所示: 
修改模擬讀卡器的兩個天線的EPC值如下所示: 
把天線一的所有的EPC選中,然后都勾掉;對天線二的EPC進行同樣的操作。察看Edge Server命令行,可以看到如下結果(注意,輸出結果較長,下面只列出其中一部分): 
7. 察看Enterprise Server報表
進入Enterprise Server Reporting Service控制臺,在生成報表選項的“Include”位置只選擇AGGREGATION,成生如下報表: 
此外,可以將EPCIS events 捕獲到EPCISCapture queue,其需要的配置的地方有工作流模塊的消息通告目的URI和XSLT的設置。由于文章篇幅限制,在這里不再具體配置。讀者可以自行察看Enterprise Server的電子文檔,來參考實現這部分功能。其URL如下:http://edocs.bea.com/rfid/enterprise_server/docs20/index.html