`
nivcheral
  • 浏览: 70782 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

在Flex中使用消息服务

    博客分类:
  • ajax
阅读更多

在Flex中使用消息服务

目录结构:
在Flex中使用消息服务(轮询方式) - abjuration - abjuration

FlexMessage.mxml:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="13">

<mx:Script>
 <![CDATA[
  import mx.messaging.events.MessageEvent;
  import mx.messaging.messages.AsyncMessage;  
  private function onToggleButtonClicked():void{
   if(toggleButton.label=="subscribe"){
    consumer.subscribe(); //订阅消息
    toggleButton.label="unsubscribe";
   }else{
    consumer.unsubscribe(); //取消订阅
    toggleButton.label="subscribe";
   }
  }
  private function sendChartInfo():void{
   var message:AsyncMessage=new AsyncMessage;
   message.body={msg:chartInput.text,sender:txtme.text,receiver:txtto.text};
   if(consumer.subscribed){
    producer.send(message);//发布消息
   }
   //if (txtto.text != null && txtto.text != ""){
   // chartField.text += "您对"+txtto.text+"说:" + chartInput.text + "\n";
   //}
   chartInput.text="";
  }
  private function messageHandler(event:MessageEvent):void{
   var chat:Object = event.message.body;
   //if ((chat.receiver != null && chat.receiver != "") && (chat.receiver == txtme.text)){
   // chartField.text += chat.sender+"对您说:"+chat.msg+"\n";
   //} else if (txtto.text == null || txtto.text == "" && chat.sender != txtme.text){
   
    chartField.text += chat.sender+"对大家说:"+chat.msg+"\n";
   //}
  }
 ]]>
</mx:Script>  
 <mx:Button id="toggleButton" label="subscribe" x="454" y="40" width="125" click="onToggleButtonClicked()"/>
 <mx:TextArea id="chartField" x="220" y="88" width="359" height="144"/>
 <mx:TextInput id="chartInput" x="220" y="255" width="290"/>
 <mx:Button x="518" y="255" label="send" click="sendChartInfo()"/>
 <mx:Producer id="producer" destination="ChartDestination"/>
 <mx:Consumer id="consumer" destination="ChartDestination" message="messageHandler(event)"/>
 <mx:TextInput x="266" y="289" width="76" id="txtme"/>
 <mx:Text x="220" y="292" text="自己:&#xa;" width="42" height="24" fontSize="12"/>
 <mx:TextInput x="266" y="323" width="76" height="26" id="txtto"/>
 <mx:Label x="220" y="325" text="对方:"/>
</mx:Application>

messaging-config.xml:
<destination id="ChartDestination" channels="my-polling-amf"/>

services-config.xml: 
<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>
               <!-- 表示1秒钟轮询一次 -->
                <polling-interval-seconds>1</polling-interval-seconds>
            </properties>
        </channel-definition>

分享到:
评论

相关推荐

    Flex实现的xmpp消息发送接收

    在这个特定的场景中,"Flex实现的xmpp消息发送接收"是指使用Flex技术来实现在Android、iOS等移动设备以及IE浏览器上的即时通讯功能。 XMPP(Extensible Messaging and Presence Protocol)是一种开放标准的协议,...

    Flex Message Service 消息服务

    在Flex消息服务中,发送消息的应用被称为生产者(producer),而接收消息的应用被称为消费者(consumer)。 消息接收点(message destination)是负责数据转换为消息,以及将消息转换为消费者可以使用的数据格式的...

    Blazeds 的flex端主动订阅消息

    在Flex端订阅消息的核心在于使用 BlazeDS 的 MessageBroker 服务,它提供了AMF(Action Message Format)通道,使得Flex客户端可以与服务器端的业务逻辑进行高效的数据交换。下面我们将深入探讨如何实现这个功能。 ...

    Flex与Java的消息推送

    在实际应用中,开发人员需要在Java服务器端创建处理推送逻辑的服务,并在Flex客户端使用AMFChannel与服务器建立连接,订阅感兴趣的数据通道。当服务器端有新数据时,会通过已建立的连接将数据推送到客户端,客户端...

    基于FLEX,MINA消息推送核心代码

    本话题聚焦于基于FLEX和MINA的消息推送核心技术,这两种技术在构建高效、可靠的网络通信系统中发挥着重要作用。 FLEX是一种开源的富互联网应用程序(Rich Internet Application,RIA)开发框架,主要由Adobe公司...

    AMFPHP与flex通讯

    3. **ActionScript编程**:在Flex中,我们需要编写ActionScript代码来处理用户交互,例如监听按钮点击事件,调用服务器上的聊天服务发送消息,以及接收新消息并更新UI。 4. **PHP后端服务**:在服务器端,通过...

    基于Java_BlazeDS_Flex_服务器消息推的聊天室

    在本场景中,我们将探讨如何利用BlazeDS和Flex实现服务器消息推送。 首先,让我们了解BlazeDS的基本概念。BlazeDS是Adobe Flex与Java后端进行数据交互的一个中间件,它支持AMF(Action Message Format)协议,能够...

    Flex基于Producer和Consumer方式的简易消息推送机制

    示例代码中使用的`mx:Application`、`mx:Script`、`mx:Producer`、`mx:Consumer`等都是Flex MX组件,它们是Adobe Flex框架的一部分,用于构建富互联网应用程序(RIA)。 通过以上知识点,我们可以理解Flex如何实现...

    flex as中如何使用webservice

    当我们谈论在Flex中使用Web服务时,我们通常指的是Adobe Flex,这是一个用于构建富互联网应用程序(RIA)的开源框架,它主要使用ActionScript编程语言。这篇博客文章的标题是“flex as中如何使用webservice”,我们...

    flex 多个聊天实例

    6. **组件使用**:在Flex中,有许多预定义的UI组件,如TextInput用于输入文字,Button用于发送消息,以及可能的List或DataGrid显示聊天记录。理解如何自定义和使用这些组件是必要的。 7. **事件处理**:在Flex中,...

    flex blazeDS开发使用手册,对于集成blaze开发很有用处。

    Remoting允许开发者在Flex界面中使用Java服务,简化了客户端与服务器的交互。 5. **消息传递**: BlazeDS集成了Apache ActiveMQ,支持发布/订阅(Pub/Sub)的消息模式,使得多个客户端可以订阅同一主题并接收实时...

    AMF抓取flex页面数据

    在IT行业中,Flex是一种用于构建富互联网应用程序(RIA)的技术,它基于ActionScript和Flash Player。AMF(Action Message Format)是Adobe开发的一种二进制数据交换格式,主要用于提高Flex和服务器之间的通信效率。...

    ParsleyTest Flex框架parsley的使用入门

    在Flex中,Parsley通过消息传递和选择器机制来实现依赖注入。消息传递是Parsley的一个重要特性,它允许组件之间通过发送和监听特定的消息来进行通信,而不是直接引用彼此。这降低了组件间的耦合度,增强了代码的可...

    flex用到JMS代码下载

    压缩包中的FlexBlazedsJMSDemo可能是一个示例项目,展示了如何在Flex应用中使用BlazeDS与JMS服务进行交互。此项目可能包括了Flex前端的源代码以及配置文件,展示了如何创建消息生产者(发布消息)和消费者(订阅并...

    FlexDemo.rar

    这个压缩包主要是为了演示如何在Flex前端应用中实现与后端服务的数据交互,特别是利用BlazeDS进行实时数据推送以及消息订阅的功能。以下是关于这些技术及其整合的详细解释: 1. **Flex**:Flex是一种用于构建富...

    Flex与服务器端通信

    - **C#与AMF**:在C#中,可以使用第三方库如AMF.NET或Rediska.NET来实现AMF通信协议,使得C#服务器能够理解并处理Flex客户端发送的AMF消息。 - **服务端接口设计**:为了与Flex的RemoteObject通信,C#服务器需要...

    flex-messaging系列jar包

    在实际开发中,还需要了解 BlazeDS 或 LCDS(LiveCycle Data Services)这样的服务器端组件,它们为Flex提供服务发布、数据管理和事件驱动的架构。同时,熟悉MXML和ActionScript编程语言也是必不可少的,因为它们是...

    Flex实现天气预报服务

    在本项目中,“Flex实现天气预报服务”指的是利用Flex的技术来创建一个应用,该应用能够通过调用外部的Web服务接口获取并显示天气预报信息。 Flex中的WebService组件是用于与SOAP(Simple Object Access Protocol)...

    flex仿qq右边弹出提示消息功能

    通过查看和学习这些文件,你可以深入了解如何在Flex中实现类似QQ的弹出消息功能,包括Flex组件的使用、动画效果的实现以及事件处理机制。通过实践和修改代码,你将能更好地掌握Flex开发技巧,并能够适应不同的项目...

Global site tag (gtag.js) - Google Analytics