欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入
]]>
</mx:Script>
<mx:Producer id=“messageProducer”
destination=“mychat”
fault=“handleFaults(event);”
acknowledge=“handleAcknowledgements(event)”
/>
<mx:Consumer id=“messageConsumer”
destination=“mychat”
fault=“handleFaults(event)”
message=“handleResponse(event)”
/>
<mx:VBox width=“100%” height=“100%”>
<mx:TextArea id=“chatMessagesArea” editable=“false” width=“100%” height=“100%”
fontFamily=“Georgia” fontSize=“19” color=“#2194AD”/>
<mx:HBox width=“100%” height=“27”>
<mx:TextInput id=“chatMessageTxt” width=“100%” height=“100%”
fontFamily=“Georgia” fontSize=“15” enter=“sendMessage()”/>
<mx:Button id=“chatMessageBtn” label=“Send” width=“64”
height=“100%” click=“sendMessage();”/>
</mx:HBox>
</mx:VBox>
</mx:Application>
3.写一个java类MessageSender
[java]
package com.kinorsoft;
import java.util.Date;
import flex.messaging.MessageBroker;
import flex.messaging.messages.AsyncMessage;
public class MessageSender {
public void sendMessageToClients(String messageBody)
{
AsyncMessage msg = new AsyncMessage();
msg.setClientId(“Java-Based-Producer-For-Messaging”);
msg.setTimestamp(new Date().getTime());
//you can create a unique id
msg.setMessageId(“Java-Based-Producer-For-Messaging-ID”);
//destination to which the message is to be sent
msg.setDestination(“mychat”);
//set message body
msg.setBody(messageBody != null?messageBody:“”);
//set message header
msg.setHeader(“sender”, “From the server”);
//send message to destination
MessageBroker.getMessageBroker(null).routeMessageToService(msg, null);
}
}
4.MessageSender.jsp调用上面的MessageSender.java
[java]
<%@page import=“com.kinorsoft.MessageSender” %>
<%
try
{
com.kinorsoft.MessageSender msg = new com.kinorsoft.MessageSender();
msg.sendMessageToClients(“This is from the jsp page”);
out.println(“sent message”);
}
catch(Exception e)
{
e.printStackTrace();
}
%>
5.修改一下 WEB-INF/flex/messaging-config.xml
在<service>下加上
<destination id=“mychat”></destination>
[1][2]
你不怕困难,困难就怕你。