Pushing Messages From BlazeDs to Flex (Invoking within Java) -
i'm having trouble figuring out how send message via blazeds(on tomcat) flex client. have working send/receive message client, have situation need send message originating in java. thought easier.
methods have tried:
messageservice.pushmessagetoclients(msg);
serviceadapter.invoke(msg);
exception: flex.messaging.messageexception: java.lang.nullpointerexception : null
messagebroker.routemessagetoservice(msg);
[blazeds]14:03:35.898 exception when invoking service: (none) message: flex message (flex.messaging.messages.asyncmessage)
services.xml:
<channel-definition id="my-streaming-amf" class="mx.messaging.channels.streamingamfchannel"> <endpoint url="http://192.168.2.43:8400/testdrive/messagebroker/streamingamf" class="flex.messaging.endpoints.streamingamfendpoint"/> </channel-definition>
message-config.xml:
<?xml version="1.0" encoding="utf-8"?>
<adapters> <adapter-definition id="actionscript" class="flex.messaging.services.messaging.adapters.actionscriptadapter" default="false" /> <adapter-definition id="amfmessageadapter" class="services.amfmessageadapter" 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="amfmessageadapterdestination"> <channels> <channel ref="my-streaming-amf" /> </channels> <adapter ref="amfmessageadapter" /> </destination>
amfmessageadapter
package services; import flex.messaging.messages.asyncmessage; import flex.messaging.messages.message; import flex.messaging.services.messageservice; import flex.messaging.services.serviceadapter; /** * test service adapter. great testing when want send object , nothing * else. class has stay in main codebase (instead of test) because, when it's used * needs deployed tomcat. * @author kevin g * */ public class amfmessageadapter extends serviceadapter { string testmessage = "test_message"; @override public object invoke(message message) { asyncmessage newmessage = (asyncmessage) message; newmessage.setbody(testmessage); messageservice msgservice = (messageservice)getdestination().getservice(); msgservice.pushmessagetoclients(newmessage, false); return null; } }
any ideas folks?
Comments
Post a Comment