当前位置RFID世界网 > 技术文章 > 支付 > 正文

基于SOA应用JMX和JMS技术的RFID中间件设计

作者:RFID世界网 收编 来源:21IC电子网 2010-06-12 09:26:54

摘要:无线射频识别RFID(Radio Frequency Identification)技术近年来得到了快速的发展,目前已进入商业化应用阶段。

关键词:SOA[9篇]  JMX[0篇]  JMS技术[0篇]  RFID[927篇]  RFID中间件[14篇]  中间件[43篇]  


  JBossMQ是通过xml文件jbossmq-destinations-service.xml进行配置的。以下是获得JBOSS JNDI初始化上下文(Context)的代码:
  Hashtable props=newHashtable();
  props.put(Context.INITIAL CONTEXT FACTORY,"org.jnp.interfaces.NamingContextFactory");
  props.put (Context. PROVIDER URL, ip +":1099");
  props.put("java.naming.rmi.security.manager","yes");
  props.put(Context.URL PKG PREFIXES,"org. jboss.naming");
  Context context=new InitialContext(props);
  来自消息系统的消息以临时XML文件的形式和磁盘文件方式保存,供数据接口使用。消息系统完成消息缓存、分类整合、路由转发、临时存放等操作[4]。
  事件过程管理EPM(Event Process Managment)由ALE服务、配置管理、复杂事件过程以及交易规则执行组成,对EVP的访问能通过HTTP、JMS以及网络服务接口实现。
  EPM登记/订阅其感兴趣的事件,当在信息空间中有事件发生时,即会通知EPM,一旦接收到这些事件,随后会应用复杂事件处理(过滤器),结合交易规则对这些事件进行处理。另一种情况下是:外部的客户端(如EPC-IS)已经注册接收ALE,这些过滤后的事件会被发送到ALE客户端指定的位置。

  2.3 服务接口层

  来自事件处理层的数据最终是分类的XML文件。同一类型的数据以XML文件的形式保存,并提供给相应的1个或多个应用程序使用。而服务接口层主要是对这些数据进行过滤、入库操作,并提供访问相应数据库的服务接口。具体操作如下:
  
  (1)将存放在磁盘上的XML文件进行批量入库操作,当XML数据量达到一定数量时,启动数据入库功能模块,将XML数据移植到各种数据库中。
  
  (2)在数据移植前将重复的数据过滤掉。
  
  (3)为企业内部和企业外部访问数据库提供Web Services接口。

  其中,数据过滤过程是在处理临时存放的XML文件的过程中完成的。方法是:将同一个卡号的多条记录按照读入的时间戳进行比较,若相邻记录的时间戳差值小于用户定义的阈值,则认为重复读取发生,剔出后1条记录。依次类推,剔出掉所有冗余数据。利用Web Services技术将对数据库的访问以服务的形式发布,供企业内部应用程序和企业合作伙伴调用。以数据过滤为例,其核心代码如下:

for(int i=1;i<rowcount;i++)
    {span=EndTime.Subtract(StartTime);
  spantiIDe=sPan.Seconds;         //相邻记录的时间戳之差
          if(spantime<=0.002)
              {subtime[i]=i;}
                         //若相邻时间戳差值小于2 ms,
                          //标记第2条记录为冗余数据
              else subtime[i]=0;}
  for(int j=1;j<rowcount;j++)                  //删除冗余记录
      {if(subtime[j].ToString()!="0")
              {ds.Tables[0].Rows[j].Delete();j=j-1;
              rowcount=rowcount11;}
  }
  以下是服务接口层向应用系统发送SOAP响应,返回处理结果的部分代码[7]。
  <report xmlns="">
  <process procInsID="503" givenID="231" givenName="
        ShipOut">
  <event eventType="report_tag_event">
  <header>Product Quantity Match Success
  </header>
  <status>success</status>
  <tagList>
  <tag ID="00110011"detectTime="2008-11-01 T13:13:
        00.110+08:00"/>
  </tagList>

  3 RFID中间件的实现及测试

  RIFD中间件系统开发工具采用Eclipse3.2,应用服务器软件采用JBOSS4.0, Web容器为Tomcat5.5。此外,服务器端采用了基于Struts的MVC多层次结构框架,数据服务层则采用MySQL5.0数据库。

  实验中,终端通过485网络组网,应用系统使用的是仓库管理系统。仓库管理系统作为服务请求者,根据服务接口层公布的入库信息核对服务WSDL,得到该服务的接口定义和服务端侦听地址,由入库管理模块通过服务代理接口向Web服务发送SOAP请求消息,请求入库信息核对服务,Web服务平台收到该服务请求后,向RFID中间件发送消息,创建一个出库信息核对服务的实例,设备管理层根据服务请求参数,启动相应的RFID阅读器读取标签信息。然后将读取的标签信息经处理后打包传给事件处理层,根据服务请求的参数与捕获的标签信息进行核对处理,处理后向服务接口层返回核对数据正确或者错误的信息,如图4所示。最后,服务接口层向仓库管理系统发送SOAP响应,返回处理结果[5]。

  实验表明,原来的应用系统仅仅支持1种固定卡型的阅读器,采用RFID中间件以后,可以在1个系统中采用各种卡型的阅读器,而上层程序不需要再进行修改,增加了系统的可扩展性和易维护性,节约了时间和成本。系统稳定性也有大的提高,有效解决了企业应用中所关心的问题。

  本文提出了一个基于SOA,综合应用JMX、JMS等技术的RFID中间件架构,并说明了RFID中间件各部分的含义和作用及基础架构的实现。这种中间件结构能很好地屏蔽低端各种物理设备的信息。由于采取了模块化的结构,可以根据需要进行裁减,在需要的时候再加入相应的模块,例如,可根据需要是否添加认证和安全模块。通过Web Service,可实现对RFID中间件更高层次包装,保证了RFID基础架构中3个功能层之间的相互独立和协同工作。

 已有0条评论 我要评论 联系编辑 分享到:网易新浪腾讯人人开心网豆瓣MSN


最新评论(加载最新评论):


上一篇:WLAN无线校园网的优化与改进

下一篇:浅谈RFID技术在电影档案库管中的应用


相关文章:


关键字搜索:


新闻中心:SOA[30篇]  JMX[0篇]  JMS技术[0篇]  RFID[6123篇]  RFID中间件[30篇]  中间件[123篇]  

成功应用:SOA[1篇]  JMX[0篇]  JMS技术[0篇]  RFID[578篇]  RFID中间件[1篇]  中间件[1篇]  

解决方案:SOA[2篇]  JMX[0篇]  JMS技术[0篇]  RFID[366篇]  RFID中间件[1篇]  中间件[4篇]  


图片文章: