Flex与Java的简易消息推送机制举例


pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API liyan_gis的专栏 有奖征资源,博文分享有内涵 社区问答:芈峮iOS测试指南 专访阿里陶辉 2014 CSDN博文大赛 10月微软MVP申请 Flex与Java的简易消息推送机制举例- 2011-12-19 15:51 4743人阅读 评论(1) 收藏 举报 flex java thread tomcat properties library Flex与Java的简易消息推送机制举例 使用adobe提供的java flex通信包blazeDS中提供的推送功能实现Java到Flex的数据推送过程 1. 从adobe官网下载blazeds.war,这是一个压缩包,里面的包含META-INF和WEB-INF两个文件夹,目录结构如下: 其中含META-INF仅包含MANIFEST.MF文件, WEB-INF中包含classes、flex、lib及src四个文件夹,其中flex文件夹中 包含四个配置文件,lib中包含java和flex通讯所需要的jar包。 Flex文件夹中包含: Lib文件夹包含: 2. 创建Java后台的推送服务项目 原创: 16篇 转载: 9篇 译文: 1篇 评论: 11条 个人资料 liyan_gis 访问: 40020次 积分: 587分 排名: 千里之外 文章搜索 目录视图 摘要视图 订阅 登录 | 注册 pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 新建一个DynamicWeb Project,如:JavaPushServer 点击Next 点击Next 点击Finish,这时候创建了一个空的动态web项目,使用Tomcat6运行.这时候Eclipse中的见到的项目信息如下:Java Resources中的src为java源代码,Libraries中为java运行所依赖的jar包,如果已经配置好了Tomcat运行环境,则 Apache Tomcat v6.0…目录下自动加载了Tomcat的jar包,和JRE System Library目录下的jar包 因为通讯需要blazeds,所以,这时候,可以将blazeds.war解压出来的两个文件夹替换掉刚才创建的web工程中 WebContent文件目录下的内容.替换之后可以看到WebContent文件夹下内容变化情况: 以及Java Sources中的Libraries中Web App Libraries中增加了很多jar包,这些就是blazeds.war中所包含的jar包 引入blazeds.war之后,开始写Java代码: 创建名为Tick的java实体类: package com.eunut.vo; //实体类 public class Tick { privateString seqno; publicString getSeqno(){ returnseqno; } 展开 (9532) (4743) (3850) (3076) (2323) (2168) (1610) (1557) 文章分类 GIS综合 (6) webgis技术相关 (1) 业界新闻摘要 (2) 移动GIS技术相关 (0) Flex (2) 文章存档 2013年04月 (4) 2012年09月 (1) 2012年08月 (1) 2012年05月 (2) 2011年12月 (1) 阅读排行 基于Geoserver的WFS服务与Openlayers实现地理查询 Flex与Java的简易消息推送机制举例- 共享免费世界地图OpenStreetMap(OSM) Flex转义字符串 摘抄笔记:DEM数据格式转换 flex 如何设置蒙版(遮罩) Flex中ToggleButtonBar控件设置button的样式 国内外气象资源下载地址,nc等 pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API } //字符类型,为测试用仅仅加了一个属性,可以为多个 publicvoid setSeqno(String seqno) { this.seqno=seqno; } } 然后再创建一个名为TickCacheServlet的Servlet 举例代码如下: import java.io.IOException; importjavax.servlet.ServletException; importjavax.servlet.http.HttpServlet; importjavax.servlet.http.HttpServletRequest; importjavax.servlet.http.HttpServletResponse; (1084) (1082) (8) (2) (1) (0) (0) (0) (0) (0) (0) (0) flex 的融合blendMode使用 气象类网址大全 评论排行 基于Geoserver的WFS服务与Openlayers实现地理查询 共享免费世界地图OpenStreetMap(OSM) Flex与Java的简易消息推送机制举例- 2011年2月12日 GIS产业新闻摘要 Flex 一些常用的语句 Flex中ToggleButtonBar控件设置button的样式 国内外气象资源下载地址,nc等 气象类网址大全 Esri Maps for Office使用揭秘 墨卡托及Web墨卡托投影 推荐文章 最新评论 Flex与Java的简易消息推送机制举例- hi_program: 楼主,请问在 msgBroker.routeMessageToService(msg,null); 这... 共享免费世界地图OpenStreetMap(OSM) oSHARK1234: osm可以当成xml 文件解析么 基于Geoserver的WFS服务与Openlayers实现地理查询 liuyu_rs: 可以给个完整的代码 吗,你的那个地址已经看不了 了,非常感谢, 867532660@qq.com pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API import com.eunut.vo.Tick; importflex.messaging.MessageBroker; importflex.messaging.messages.AsyncMessage; importflex.messaging.util.UUIDUtils; /** * Servlet implementation classTickCacheServlet */ public class TickCacheServletextends HttpServlet { privatestatic final long serialVersionUID = 1L; //线程 privatestatic FeedThread thread; /** * @see HttpServlet#HttpServlet() */ 基于Geoserver的WFS服务与Openlayers实现地理查询 www2012: 完整的可以看这个例 子: http://180.86.65.63/article/488.htm 共享免费世界地图OpenStreetMap(OSM) abcd794532030: 老师让做一个 桌面版的OpenStreetMap,现在 都不太了解这个技术,学习了 呵 呵 基于Geoserver的WFS服务与Openlayers实现地理查询 huicaier: 作者写的比较详细,感 谢。 基于Geoserver的WFS服务与Openlayers实现地理查询 liyan_gis: value: geo是构造 OpenLayers.Filter.Spatial实例所 需要的参数属性,... 基于Geoserver的WFS服务与Openlayers实现地理查询 syj2518: 初学,还是有点不明 白“value: geo,”是什么意思,还 有function conformati... 基于Geoserver的WFS服务与Openlayers实现地理查询 彭金华: 学习了 基于Geoserver的WFS服务与Openlayers实现地理查询 yesasdf: 我尝试使用这种方法, 但是查询所得的要素数始终为 0,请问有实例可以参考一下 吗? pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API public TickCacheServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequestrequest, HttpServletResponse response) */ protectedvoid doGet(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException { //TODO Auto-generated method stub Stringcmd=request.getParameter("cmd"); if(cmd.equals("start")) { start(); } if(cmd.equals("stop")) pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API { stop(); } } /** * @see HttpServlet#doPost(HttpServletRequestrequest, HttpServletResponse response) */ protectedvoid doPost(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException { //TODO Auto-generated method stub super.doPost(request,response); } //初始化 publicvoid init() throws ServletException{ super.init(); pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API } publicvoid destroy(){ super.destroy(); } //启动监听 publicvoid start(){ if(thread==null) { thread=newFeedThread(); thread.start(); } System.out.println("start!!!"); } //停止监听 publicvoid stop(){ pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API thread.running=false; thread=null; } //循环发送消息进程 publicstatic class FeedThread extends Thread { publicboolean running=true; publicvoid run(){ //总是无法获取msgBroker,web.xml需要有MessageBrokerServlet的配置信息 MessageBrokermsgBroker=MessageBroker.getMessageBroker(null); StringclientID=UUIDUtils.createUUID(); inti=0; while(running){ Ticktick=new Tick(); tick.setSeqno(String.valueOf(i)); System.out.println(i); pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API AsyncMessagemsg=new AsyncMessage(); msg.setDestination("tick-data-feed"); msg.setHeader(AsyncMessage.SUBTOPIC_HEADER_NAME,"tick"); msg.setClientId(clientID); msg.setMessageId(UUIDUtils.createUUID()); msg.setTimestamp(System.currentTimeMillis()); msg.setBody(tick); msgBroker.routeMessageToService(msg,null); i++; try { Thread.sleep(2000); } catch(InterruptedExceptione) { pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API } } } } } 3. 修改Java后台的推送服务项目的配置文件: WebContent\WEB-INF\messaging-config.xml true . pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 以及services-config.xml中补充: 0 10 5000 pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 同时,还要确保web.xml中包含下面的内容: MessageBrokerServlet MessageBrokerServlet flex.messaging.MessageBrokerServlet services.configuration.file /WEB-INF/flex/services-config.xml 1 pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API MessageBrokerServlet /messagebroker/* TickCacheServlet TickCacheServlet TickCacheServlet TickCacheServlet /TickCacheServlet 4. 创建Flex客户端应用程序FlexPushClient.mxml: pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 还要创建Tick的as类: package com.eunut { importmx.rpc.remoting.RemoteObject; [RemoteClass(alias="com.eunut.vo.Tick")] //用于和java后台类转换alias为java类的命名空间,否则不能转换 [Bindable] publicclass Tick { publicfunction Tick() { } publicvar seqno:String; } } 配置此flex的应用程序的服务器为刚才创建好的JavaPushServer pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 好了,这样就可以了哦,现在就是如果看到推送的效果了,启动方式如下: 首先运行发布到Tomcat上的JavaPushServer,然后,打开客户端网址: http://localhost:8080/JavaPushServer/FlexPushClient.html 这时候显示的界面如下: 此时,点击Button按钮,启动监听程序. 然后,需要启动服务器端的监听: http://localhost:8080/JavaPushServer/TickCacheServlet?cmd=start 如果一切顺利,则可以看到Label显示的数字从0开始逐个增加. 通过调用: http://localhost:8080/JavaPushServer/TickCacheServlet?cmd=stop 就关闭服务器端的监听程序 注意:途中可能出现这样那样的问题,绝大部分都是因为配置文件不正确引起的,所以,遇到问题时,一定要仔细查看配置 文件中的内容是否正确. pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 更多 0 上一篇 Flex中ToggleButtonBar控件设置button的样式 pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 主题推荐 flex java 应用程序 actionscript 服务器 猜你在找 getHibernateTemplate.find 有多个参数的用法 关于ESRI Flex API的Symbol Comt4j消息推送实例 JAVA聊天软件教程 (四) Flex Builder教程及Flex中repeater循环用法示例 防止JAVA SWING 多重启动的最好方法. Oracle 按年或月进行统计 flex中设置字体样式 Flex中的itemRenderer如何分发事件其所有者才能接收 到 mysql字符串匹配度查询排序 下一篇 国内外气象资源下载地址,nc等 查看评论 1楼 hi_program 前天 14:50发表 楼主,请问在 msgBroker.routeMessageToService(msg,null); 这一句报了以下错误: No destination with id 'tick-data-feed' is registered with any service. 是什么情况? 您还没有登录,请[登录]或[注册] * 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场 核心技术类目 pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API 全部主题 Java VPN Android iOS ERP IE10 Eclipse CRM JavaScript Ubuntu NFC WAP jQuery 数据库 BI HTML5 Spring Apache Hadoop .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP Spark HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap 公司简介 | 招贤纳士 | 广告服务 | 银行汇款帐号 | 联系方式 | 版权声明 | 法律顾问 | 问题报告 | 合作伙伴 | 论坛反馈 网站客服 杂志客服 微博客服 webmaster@csdn.net 400-600-2320 京 ICP 证 070598 号 北京创新乐知信息技术有限公司 版权所有 江苏乐知网络技术有限公司 提供商务支持 Copyright © 1999-2014, CSDN.NET, All Rights Reserved
还剩21页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 5 金币 [ 分享pdf获得金币 ] 0 人已下载

下载pdf

pdf贡献者

372532045

贡献于2014-07-11

下载需要 5 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf