| * destination : tobit
1. destination 설정하기
구성정보는 root/WEB-INF/flex/flex-message-service.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>
<destination id="tobit">
<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-rtmp"/>
</channels>
</destination>
</service>
|
2. producer을 생성합니다.
<mx:Producer id="tobit" destination="chat"/>
메시지 전송은 다음과같이 처리하도록 합니다.
private function send():Void
{
var message:AsyncMessage = new AsyncMessage();
message.body.userId = userId.text;
message.body.chatMessage = chatMessage.text;
producer.send(message);
} |
3. consumer 생성하기
* 컴포넌트 생성
<mx:Consumer id="tobit" destination="chat" message="messageHandler(event)"/>
* 메시지 처리 메소드
public function messageHandler(event:MessageEvent):Void
{
var body:Object = event.message.body;
chatBox.text = body.usertId + ": " + body.chatMessage;
} |
주의사항 : subscribe(); 메소드를 꼭 호출해야 합니다.
consumer.subscribe();
|