77范文网 - 专业文章范例文档资料分享平台

Fosstrak全资料(3)

来源:网络收集 时间:2018-12-10 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

2. 项目简介

EPCIS的目标是让应用程序能够将EPC相关数据整合到自己的业务中。它提供了一种永久存储EPC数据方法,同时还提供了一种的框架,利用该框架可以方便的将标签数据添加到知识库中或者从知识库中查询标签数据。为了实现上述目标,Fosstrak's EPCIS项目设计了三个独立的模块:EPCIS知识库,EPCIS捕获应用,EPCIS查询应用。下面图示简要的给出了这三个模块间基本的交互场景。

采用客户端/服务器风格架构,客户端可以是EPCIS捕获应用,也可以是EPCIS查询应用,也有可能两种都是。服务端提供一个EPCIS知识库接口与客户端相连,解析客户端请求,并按照EPC规范中定义好的规则处理这些请求数据。客户端使用的传输协议是基于HTTP的XML和SOAP。

下面章节将讲述知识库与客户端的更多细节。

3. EPCIS知识库

The Fosstrak EPCIS知识库实现了EPCIS规范中定义的下述五种绑定 ? ? ? ? ?

XML与数据定义层绑定 HTTP与捕获接口绑定

SOAP/HTTP与查询控制接口绑定 HTTP与查询回调接口绑定 HTTPS与查询回调接口绑定

下面的章节将描述上述绑定是如何实现的。

6) 访问层

访问层是EPCIS知识库的入口点,提供了客户端应用程序用以访问知识库的接口。

捕获接口

HTTP与捕获接口的绑定是通过在Servlet容器(我们使用的是Tomcat)中注册一个Java Servlet实现。这个Servlet接收从EPCIS捕获应用中发来的请求,这些请求中必须包含用XML序列化的EPCIS事件,HTTP POST请求中必须给定payload值域(详见EPCIS规范)。Servlet将使用相应的EPCIS schema来验证XML文档的合法性,并其传递给业务层的CaptureOperationsModule类处理。

查询控制接口

为了实现SOAP/HTTP与查询控制接口绑定,我们使用了Apache的CXF Web Service框架结合JAX-WS API与JAXB data binding将Java对象映射为XML,反之亦然。CXF将SOAP请求中的内容映射为Java对象然后将其交给业务层的QueryOperationsModule类处理。

7) 业务层

业务层接受访问层的输入。如上所述,它有两个独立的模块:CaptureOperationsModule和QueryOperationsModule。

捕获操作模块

CaptureOperationsModule仅简单的获取EPCIS事件并将他们存储到数据库中。我们使用Hibernate将领域模型对象映射到关系型数据库中并生成必要的SQL语句。

查询操作模块

QueryOperationsModule根据请求参数值动态生成SQL查询语句,并将查询语句发送至资源层处理。资源层返回的结果集是已经映射完成的EPC事件领域对象(不是JDBC Result对象),将其交给访问层,接着访问层再将结果集发送给客户端应用。

查询回调接口

与查询控制接口不同,查询回调接口不直接访问客户端程序。而是客户端应用程序通过查询回调接口订阅一个查询然后知识库通过查询回调接口返回结果集。

与无状态的polled查询不同,订阅查询则必须对一些信息进行跟踪,比如:客户端最后执行时间,结果集报告发送的目标URL地址,查询参数,何时触发查询,基于什么事件触发查询。为了满足这些需求我们在Web应用上下文中放入一个指向subscriptions的引用,这样做也是为了避免subscriptions被垃圾回收

器回收从而保持其能访问各种服务。不仅如此,我还将subscriptions存入到数据库中,以便当服务器重启时能够找回subscriptions。

实现查询回调接口的组件是QuerySubscription,它表示一个是订阅查询,有两种实现方式:排程触发、URL触发。 QuerySubscriptionScheduled表示一个排程订阅查询,当该查询中的排程计时器超时时调用该查询。QuerySubscriptionTriggered表示URL订阅查询,当被捕获的事件中包换指定的URL时调用该查询。

订阅查询与轮询查询的执行方式一样,都使用QueryOperationsModule的poll方法,都是将查询结果序列化为XML,将其放入HTTP/HTTPS POST请求的payload值域中发送给客户端。

8) 资源层

资源层是一个关系型数据库,存储着事件数据、词汇表、订阅集。下图显示的是事件对象的数据库schema。

每个标准词汇表都有自己的数据表,下面我们显示了Business Transaction,Disposition,Read Point 词汇表的表结构。非标准词汇均存储在voc_any表中。

如前所述,我们也将subscriptions存储在数据库中,表结构类似如下:

4. EPCIS捕获应用

EPCIS捕获应用用来将捕获事件发送给EPCIS知识库,因为我们实现了HTTP/POST与捕获接口的绑定,所以捕获应用必须将EPCIS事件序列化为XML,将XML放入到HTTP POST请求的payload中,发送给知识库。我们使用JAXB数据绑定技术将事件领域对象映射成XML,反之亦然。

Fosstrak EPCIS捕获应用客户端捕获API和GUI。API可以供其他应用程序发送捕获请求到知识库,GUI可以实现手工插入EPCIS事件到知识库中。进一步了解如何使用客户端捕获API和GUI请参考用户指南。

5. EPCIS查询应用

EPCIS查询应用使用SOAP请求提交查询给知识库,使用CXF Web Service框架生成SOAP请求,使用JAXB数据绑定技术将Java对象映射成XML。

与捕获应用类似,查询应用也提供客户端API和GUI。进一步了解如何使用客户端API和GUI请参考用户指南。

六、 Web适配器指南 1. 关于本指南

2. EPCIS Webadapter简介 3. 特性 4. 架构 5. 在线文档

6. 设置EPCIS 知识库 7. 配置EPCIS Webadapter 8. 使用EPCIS Webadapter 9. 使用RESTful API 开发应用 10. RESTful API 交互工具 11. 不同格式的请求 12. 与Feeds协作

13. 使用HTTP和RESTful客户端包的简单调用 14. 使用Apache HTTP Client的简单示例 15. 使用Jersey JAX-RS客户端包的简单示例

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Fosstrak全资料(3)在线全文阅读。

Fosstrak全资料(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/356131.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: