RFID应用系统的数据通过Web服务传输过程是本论文的重点,其实现过程在下节有具体描述。
给标签写入信息并且贴在每一箱货物上,之后将货物送往购买厂家的库房。货物到了目的地后进行入库,用读写机具将每个标签的信息读取,并且传给购买厂家的应用系统,系统对数据进行保存和处理,之后将其中部分信息传给Web服务,由Web服务来进一步处理。传给Web服务的数据如表2所示。
Web服务收到以上信息后,来分别对每一类信息进行处理判断,并且返回处理结果。表3是处理内容及返回结果。
购买方的系统接受Web服务的返回数据,根据结构决定是否接受货物。总的来说,这个Web服务的内容就是把RFID应用系统上传来的数据进行进一步的处理,之后返回处理结果。
3.2.2 Web服务的实现
(1)根据需求生成Web服务
根据以上的需求,提供Web服务的服务商在服务器端编写数据处理程序,并按照应用系统将上传来的数据类型来定义Web服务的接口,并生成WSDL文件,来描述Web服务。WSDL(web servicedescriptionlanguage)既web服务器描述语言是用XML文档来描述wleb服务的标准,是Web服务的接口定义语言。在WSDL文件中对数据和接口描述如下:


WebService经由服务器发布后,应用系统就可以访问这个服务了。
(2)服务发布后,应用程序根据API接口来组织数据企业RFID应用系统大多数是运行在Windows系统下,因此这里的应用系统也是Windows桌面程序,系统中需要有一个与Web服务连接功能的模块。通过得到Web服务的WSDL文件,就可以来定义上传数据的类型和接口。这里用MicrosoR Visual Studio C++来编写Web服务的客户端。
将WSDL通过工具转换成Visual Studio C++可以引用的类型为cpp和hpp的代理类文件。会生成以下文件:“Upload.Bean.hpp”、"UploadBean.cpp”、 ResultBean.hpp”、 Result-Bean.cpp”、“Wslnterface.hpp”、“Wslnterface.cpp”。在程序的头文件中引入代理类,编写上传的数据的程序。如何组织和准备数据部分就不叙述了,这里讲一下比较关键的部分,就是调用代理类中定义的上传函数来进行上传数据的操作。在Wslnterface.hpp有这样一个定义:
STORAGE_CLASS_INFO ResultBean_Array puttaginfo(XSd_string Value0,xsd string Value1,XSd_long Value2,xsd_int Value3,xsd_ int Value4);
这个名为“puttaginfo”的函数就是我们用来连接Web服务上传数据的函数,其中的参数(Value0,Value1)对应的是上传的用户名和密码,(Value2,Value3,Value4)对应的分别是我们要上传的“标签序列号(TagID)”、“货物类别代码(ProductionID)”和“生产厂家代码(Factory ID)”。同时这个函数还有返回值,返回一个“ResultBean_Array ”的值,就是一个结果集数组,里面包含上面提到的一些处理结果。知道这个函数的定义后,在程序中就用这个函数来上传数据。
(3)进行数据传输
数据传输的过程包括应用系统上传数据和服务器接收数据并返回处理结果两个部分。应用系统对WebService的调用,是通过SOAP协议进行的。简单对象访问协议(SOAP)提供了标准的远程过程调用(RPC)方法来调用WebService。而SOAP也是基于XML和XSD的,XML是SOAP的数据编码方式,对WebService的调用也可以是跨平台的。因此,这里应用系统上传数据时所调用Web服务可以来自J2EE的后台系统。
系统通过调用以上WebService接口函数来与J2EE后台系统传输数据,只要网络联通并且所上传的地址与数据结构正确,程序就可以得到后台系统的返回值。应用系统再依据“ResultBean Array”这个返回数组里记载的每个物品“标签序列号”(TagID)所对应的“序列号标志位”(TagSign)和“生产厂家及货物标志位”(ProductionSign)的数值,来判断这次通信是否成功以及其它信息。
最后,应用系统根据返回信息以及业务需求来进一步对物品标签信息行进分析和处理。这样一个RFID本地应用系统通过Web服务上传标签数据到后台系统的整个过程就完成了。
4 结束语
RFID将物理世界与计算机世界集成在一起,还将网络边缘的硬件、嵌入式软件及中间件与企业应用系统联系起来,完成了分布数据向企业应用的集成,是IT技术的又一次延伸。将WebServices技术应用于RFID系统的已经被人们普遍认同,在很多组织及研究部门的共同努力下这方面也取得了很大的进展。本文对RFID应用系统中使用Web服务来传输数据,实现企业本地与后台系统的联通做了探讨和简单地实现,这种方法可以用在各种不同的RFID应用系统中,对于互联网上的数据传输是一种非常有效的解决方案。