- 浏览: 583868 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (174)
- JBPM (3)
- WWF (0)
- JavaScript (11)
- J2EE (40)
- OperationSystem (11)
- 数据库 (12)
- CSS (1)
- Ajax (2)
- J2SE (30)
- Tools (10)
- 服务器中间件 (3)
- 异常 (0)
- Flex (5)
- jQuery (11)
- html (9)
- Ejb (1)
- HTML5 Shiv–让该死的IE系列支持HTML5吧 (1)
- Spring (9)
- Quartz (3)
- log4j (1)
- maven (1)
- cpdetector (1)
- JSON (1)
- log4jdbc (1)
- asm (8)
- FusionCharts (1)
- jqplot (1)
- highcharts (1)
- excanvas (1)
- html5 (1)
- jpcap介绍 (1)
- weblogic (3)
- URLURLClassLoader (0)
- URLClassLoader (1)
- ant (2)
- ivy (2)
- nexus (1)
- IT (0)
- LoadRunner (1)
- SCSS (1)
- ruby (1)
- webstorm (1)
- typescript (1)
- Jboss7 (1)
- wildfly (1)
- oracle (5)
- esb (0)
- dubbo (2)
- zookeeper (3)
- eclipse (1)
- Android (2)
- Studio (1)
- Google (1)
- 微信 (1)
- 企业号 (1)
- Linux (13)
- Oracle12c (1)
- Hadoop (1)
- InletexEMC (1)
- Windows (1)
- Netty (3)
- Marshalling (2)
- Protobuf (1)
- gcc (1)
- Git (1)
- GitLab (1)
- shell (2)
- java (3)
- Spring4 (1)
- hibernate4 (1)
- postgresql (1)
- ApacheServer (2)
- Tomcat (2)
- ApacheHttpServer (2)
- realvnc (1)
- redhat (7)
- vncviewer (1)
- LVS (4)
- LVS-DR (1)
- RedHat6.5 (5)
- LVS-NAT (1)
- LVS-IPTUNNEL (2)
- LVS-TUN (1)
- keepalived (2)
- yum (1)
- iso (1)
- VMware (1)
- redhat5 (1)
- ha (1)
- nginx (2)
- proguard (1)
- Mat (1)
- DTFJ (1)
- axis2 (1)
- web service (1)
- centos (1)
- random (1)
- urandom (1)
- apache (1)
- IBM (1)
- cve (1)
- 漏洞 (1)
- JDBC (1)
- DataSource (1)
- jdk (1)
- tuxedo (2)
- wtc (1)
最新评论
-
skying007:
好资料,谢谢分享给啊
FusionCharts在服务器端导出图片(J2EE版) -
cgnnzg:
大神好 可以发一份源码给我学习么 多谢了 978241085 ...
springmvc+dubbo+zookeeper -
jifengjianhao:
求源码:854606899@qq.com
springmvc+dubbo+zookeeper -
wdloyeu:
shihuan8@163.com邮箱网盘在哪,没找到。能给份源 ...
Java Socket长连接示例代码 -
huangshangyuanji:
求代码:45613032@qq.com
springmvc+dubbo+zookeeper
采用BlazeDS的StreamingAMFChannel 消息服务的聊天通信,这种方式是最快和延迟最小的了。
BusyChat.mxml文件:
BlazeDS服务器端配置文件
messaging-config.xml文件:
proxy-config.xml:
remoting-config.xml文件:
services-config.xml文件:
web.xml文件:
我的服务器端口是8050,下载文件需要修改为tomcat的端口号。
BusyChat.mxml文件:
<?xml version="1.0" encoding="utf-8"?> <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/halo" width="560" creationComplete="consumer.subscribe();"> <fx:Script> <![CDATA[ import mx.messaging.messages.AsyncMessage; import mx.messaging.messages.IMessage; private function send():void { var message:IMessage = new AsyncMessage(); message.body.chatMessage = msg.text+consumer.clientId; producer.send(message); msg.text = ""; } private function messageHandler(message:IMessage):void { log.text += message.body.chatMessage + "\n"; } ]]> </fx:Script> <fx:Declarations> <mx:ChannelSet id="cs"> <mx:StreamingAMFChannel url="http://localhost:8050/BusyChat/messagebroker/streamingamf"/> </mx:ChannelSet> <mx:Producer id="producer" destination="chat" channelSet="{cs}"/> <mx:Consumer id="consumer" destination="chat" channelSet="{cs}" message="messageHandler(event.message)"/> </fx:Declarations> <s:Panel title="Chat Test!" x="20" y="19" width="518" height="295"> <s:TextArea id="log" x="19" y="11" width="473" height="166"/> <s:TextInput id="msg" x="19" y="191" width="377" height="46" enter="send()"/> <s:Button x="411" y="192" label="发送消息" height="43" width="77" click="send()"/> </s:Panel> </s:WindowedApplication>
BlazeDS服务器端配置文件
messaging-config.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <service id="message-service" class="flex.messaging.services.MessageService"> <adapters> <adapter-definition id="actionscript" class="flex.messaging.services.messaging.adapters.ActionScriptAdapter" default="true" /> <adapter-definition id="jms" class="flex.messaging.services.messaging.adapters.JMSAdapter"/> </adapters> <default-channels> <channel ref="my-streaming-amf"/> </default-channels> <destination id="chat"> <properties> <network> <session-timeout>0</session-timeout> </network> <server> <max-cache-size>1000</max-cache-size> <message-time-to-live>0</message-time-to-live> <durable>false</durable> </server> </properties> <channels> <channel ref="my-streaming-amf" /> </channels> </destination> </service>
proxy-config.xml:
<?xml version="1.0" encoding="UTF-8"?> <service id="proxy-service" class="flex.messaging.services.HTTPProxyService"> <properties> <connection-manager> <max-total-connections>100</max-total-connections> <default-max-connections-per-host>2</default-max-connections-per-host> </connection-manager> <allow-lax-ssl>true</allow-lax-ssl> </properties> <adapters> <adapter-definition id="http-proxy" class="flex.messaging.services.http.HTTPProxyAdapter" default="true"/> <adapter-definition id="soap-proxy" class="flex.messaging.services.http.SOAPProxyAdapter"/> </adapters> <default-channels> <channel ref="my-amf"/> </default-channels> <destination id="DefaultHTTP"> </destination> </service>
remoting-config.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <service id="remoting-service" class="flex.messaging.services.RemotingService"> <adapters> <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/> </adapters> <default-channels> <channel ref="my-amf"/> </default-channels> </service>
services-config.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <services-config> <services> <service-include file-path="remoting-config.xml" /> <service-include file-path="proxy-config.xml" /> <service-include file-path="messaging-config.xml" /> <default-channels> <channel ref="my-streaming-amf"/> </default-channels> </services> <security> <login-command class="flex.messaging.security.TomcatLoginCommand" server="Tomcat"/> <!-- Uncomment the correct app server <login-command class="flex.messaging.security.TomcatLoginCommand" server="JBoss"> <login-command class="flex.messaging.security.JRunLoginCommand" server="JRun"/> <login-command class="flex.messaging.security.WeblogicLoginCommand" server="Weblogic"/> <login-command class="flex.messaging.security.WebSphereLoginCommand" server="WebSphere"/> --> <!-- <security-constraint id="basic-read-access"> <auth-method>Basic</auth-method> <roles> <role>guests</role> <role>accountants</role> <role>employees</role> <role>managers</role> </roles> </security-constraint> --> </security> <channels> <channel-definition id="my-streaming-amf" class="mx.messaging.channels.StreamingAMFChannel"> <endpoint url="http://localhost:8050/BusyChat/messagebroker/streamingamf" class="flex.messaging.endpoints.StreamingAMFEndpoint"/> <properties> <idle-timeout-minutes>0</idle-timeout-minutes> <max-streaming-clients>50</max-streaming-clients> <server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis> <user-agent-settings> <user-agent match-on="MSIE" kickstart-bytes="2048" max-streaming-connections-per-session="1"/> <user-agent match-on="Firefox" kickstart-bytes="2048" max-streaming-connections-per-session="1"/> </user-agent-settings> </properties> </channel-definition> <channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel"> <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint"/> </channel-definition> <channel-definition id="my-secure-amf" class="mx.messaging.channels.SecureAMFChannel"> <endpoint url="https://{server.name}:{server.port}/{context.root}/messagebroker/amfsecure" class="flex.messaging.endpoints.SecureAMFEndpoint"/> <properties> <add-no-cache-headers>false</add-no-cache-headers> </properties> </channel-definition> <channel-definition id="my-polling-amf" class="mx.messaging.channels.AMFChannel"> <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amfpolling" class="flex.messaging.endpoints.AMFEndpoint"/> <properties> <polling-enabled>true</polling-enabled> <polling-interval-seconds>4</polling-interval-seconds> </properties> </channel-definition> <!-- <channel-definition id="my-http" class="mx.messaging.channels.HTTPChannel"> <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/http" class="flex.messaging.endpoints.HTTPEndpoint"/> </channel-definition> <channel-definition id="my-secure-http" class="mx.messaging.channels.SecureHTTPChannel"> <endpoint url="https://{server.name}:{server.port}/{context.root}/messagebroker/httpsecure" class="flex.messaging.endpoints.SecureHTTPEndpoint"/> <properties> <add-no-cache-headers>false</add-no-cache-headers> </properties> </channel-definition> --> </channels> <logging> <target class="flex.messaging.log.ConsoleTarget" level="Error"> <properties> <prefix>[BlazeDS] </prefix> <includeDate>false</includeDate> <includeTime>false</includeTime> <includeLevel>false</includeLevel> <includeCategory>false</includeCategory> </properties> <filters> <pattern>Endpoint.*</pattern> <pattern>Service.*</pattern> <pattern>Configuration</pattern> </filters> </target> </logging> <system> <redeploy> <enabled>false</enabled> <!-- <watch-interval>20</watch-interval> <watch-file>{context.root}/WEB-INF/flex/services-config.xml</watch-file> <watch-file>{context.root}/WEB-INF/flex/proxy-config.xml</watch-file> <watch-file>{context.root}/WEB-INF/flex/remoting-config.xml</watch-file> <watch-file>{context.root}/WEB-INF/flex/messaging-config.xml</watch-file> <watch-file>{context.root}/WEB-INF/flex/data-management-config.xml</watch-file> <touch-file>{context.root}/WEB-INF/web.xml</touch-file> --> </redeploy> </system> </services-config>
web.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-name>BlazeDS</display-name> <description>BlazeDS Application</description> <!-- Http Flex Session attribute and binding listener support --> <listener> <listener-class>flex.messaging.HttpFlexSession</listener-class> </listener> <!-- MessageBroker Servlet --> <servlet> <servlet-name>MessageBrokerServlet</servlet-name> <display-name>MessageBrokerServlet</display-name> <servlet-class>flex.messaging.MessageBrokerServlet</servlet-class> <init-param> <param-name>services.configuration.file</param-name> <param-value>/WEB-INF/flex/services-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>MessageBrokerServlet</servlet-name> <url-pattern>/messagebroker/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> </welcome-file-list> <!-- for WebSphere deployment, please uncomment --> <!-- <resource-ref> <description>Flex Messaging WorkManager</description> <res-ref-name>wm/MessagingWorkManager</res-ref-name> <res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type> <res-auth>Container</res-auth> <res-sharing-scope>Shareable</res-sharing-scope> </resource-ref> --> </web-app>
我的服务器端口是8050,下载文件需要修改为tomcat的端口号。
- Flex-BusyChat.rar (3.9 KB)
- 下载次数: 211
- Myeclipse-BusyChat.rar (4.8 MB)
- 下载次数: 248
评论
1 楼
neusoft_jerry
2014-11-27
在IE11下my-streaming-amf未能成功建立连接,在360极速浏览器7.5.3.308内核版本30.0.1599.101下好使。
发表评论
-
url action editor破解FusionCharts标示
2014-06-05 10:18 1949http://yklovejava-163-com.iteye ... -
Flex编译错误码总结
2011-06-10 21:58 1216附件里Flex编译常见错误码Excel。 -
Flex Java Spring
2011-05-21 21:04 2208Flex 对Java端返回Collection的处理方法 将F ... -
FusionCharts在服务器端导出图片(J2EE版)
2010-12-05 13:31 17492首先需要下载FusionCharts v3.1的swf文件,还 ...
相关推荐
Flex + blazeds + Java推送Demo 本例实现由Flex一端客户端发送消息, 然后由Java端在发布到所有订阅的其它Flex端. 里面有说明与源码, 还有一个直接放到Tomcat里面的直接发布的项目 小编使用工具 eclipse3.5 flex sdk...
标题中的“PureMVC+Flex+BlazeDS+Spring+Hibernate.doc”指的是一项整合了多种技术的Web应用开发方案,这些技术包括PureMVC、Flex、BlazeDS、Spring和Hibernate。这篇文档可能是指导读者如何将这些技术结合在一起...
标题“flex+blazeds+spring”表明我们要探讨的是如何将Flex前端与BlazeDS中继层和Spring后端框架结合起来,实现完整的数据交互和应用程序逻辑。 在Flex与Spring集成的环境中,Flex作为用户界面展示层,负责与用户...
BlazeDS 是一款开源的服务器端技术,由 Adobe 提供,主要用于实现 Java 应用程序与 Flex 客户端之间的通信。它利用 AMF(Action Message Format)协议,这是一种二进制格式,相比基于文本的协议如 XML,AMF 提供了更...
特别适合于 Java 开发,而 Flex 是一种用于创建交互式用户界面的开源框架,BlazeDs 则是 Adobe 推出的服务器端数据服务组件,用于实现在 Flex 客户端和 Java 应用服务器之间的实时双向通信。 **MyEclipse 8.5** ...
在实际项目中,Flex+BlazeDS+Java通信的应用场景包括股票报价、实时聊天、在线协作工具等需要实时更新数据的场景。通过这种方式,开发者可以利用Flex的强大UI设计能力,结合Java的后端处理能力,构建出高性能、交互...
flex+spring+blazeds在MyEclipse下非常详细的结合配置
综上所述,"Flex+BlazeDS+Java发布/订阅聊天程序"是一个综合运用多种技术的实时通信解决方案,涉及前端开发、后端服务、消息传输和安全等多个层面,为用户提供了一个高效、实时的聊天体验。在实际开发中,还需要根据...
总之,这个“Flex+blazeds+java企业门户网站完整源码”是一个很好的学习资源,可以帮助开发者掌握如何利用Flex构建富用户体验的Web应用,并通过BlazeDS实现与Java后端的有效交互,进而构建高效、功能强大的企业级...
BlazeDS是Adobe官方提供的一个开源项目,它为Flex应用程序提供了与Java服务器之间的实时双向通信。BlazeDS支持AMF(Action Message Format)协议,使得Flex与Java之间的数据交换高效且轻量级。 在Java后台,我们...
Flex作为Adobe公司推出的RIA开发框架,搭配BlazeDS(一个轻量级的消息传递系统)和Java后端,可以构建出功能强大、交互丰富的Web应用。本文将深入探讨如何入门搭建Flex + BlazeDS + Java环境,并介绍其基本应用。 ...
Flex+BlazeDS+Java发布/订阅聊天程序是一种基于客户端-服务器架构的实时通信解决方案,它结合了Adobe Flex的用户界面构建能力、BlazeDS的数据服务功能以及Java后端的强大处理能力,实现了高效的聊天应用程序。...
Flex+blazeDS+Spring官方Demo,环境搭建,内含十几个例子,从易到难,包括spring消息,spring安全,注解方式和非注解配置文件方式,十分好用。内含有tomcat,可直接启动并运行用户手册。
BlazeDS是Adobe提供的一个开源服务器端组件,它充当Java和Flex之间的通信桥梁,实现了基于AMF(Action Message Format)的高效数据传输。 Java是全球广泛使用的编程语言,尤其在企业级应用开发中占有重要地位。它...
在Spring+BlazeDS+Flex的应用中,Quartz可能被用来定期触发服务器端的任务,例如发送通知、更新数据等,然后通过BlazeDS将这些消息推送到Flex客户端。 至于压缩包内的“说明.txt”,这可能包含了项目的配置步骤、...
使用flex 4.5 + Spring 3.0 + Hibernate 3.3 + Cairngorm 2.2.1 + BlazeDS 3.3.0 + Spring BlazeDS Integration 1.0.3整合出的一个登录的小demo·
总之,`Flex+BlazeDS整合J2ee示例`是一个综合性的项目,涉及前端UI设计、后端服务开发以及两者间的通信机制。学习和理解这个示例可以帮助开发者掌握如何构建高效、实时的富互联网应用程序,提升Web应用的用户体验。
而BlazeDS是Adobe提供的一个免费服务器端组件,用于实现Flex与Java后端的数据通信。本文将深入探讨如何配置Flex与BlazeDS,让它们协同工作,实现高效、稳定的数据交换。 首先,我们需要准备必要的工具和环境。...
Flex+BlazeDS+Spring+Hibernate 是一个经典的前端与后端集成方案,广泛应用于构建富互联网应用程序(Rich Internet Applications,RIA)。在这个框架组合中,Flex 作为用户界面层,提供了丰富的交互体验;BlazeDS ...