On 07/25/2012 08:21 PM, dejanb [via ActiveMQ] wrote: > Can you try the latest snapshot and confirm it works for you > > https://repository.apache.org/content/repositories/snapshots/org/apache/activemq/apache-activemq/5.7-SNAPSHOT/ >
Looks like progress. My old stomp 1.0 client can connect, login and send a message to ActiveMQ 5.7-SNAPSHOT. Unfortunately it then throws: [java] Jul 25, 2012 10:00:59 PM org.apache.activemq.transport.stomp.ProtocolConverter handleException [java] WARNING: Exception occurred processing: [java] SEND [java] amq-msg-type:MapMessage [java] transformation:jms-map-json [java] destination:/queue/integration.account_update [java] transformation-error:org/xmlpull/v1/XmlPullParserException [java] [java] {"map":{"entry":[{"string":["update_type","ad...2","GB"]}]}}: org.apache.activemq.transport.stomp.ProtocolException: Unsupported message type 'MapMessage' I've seen this before and don't think I ever worked a way around it. To try to get around this, I updated my PHP client to the latest from the github repo, and dropped it into my client e-commerce site lib directory, and put together a basic test using the stomp-php/src/examples/transformation.php as a guide. (the 'namespace', 'use' and 'auto_loader' stuff is completely foreign to me, and I wasted some time trying to get it to work .. the require_once and FuseSource\Stomp\Stomp syntax runs, at least) ini_set('include_path', ini_get('include_path') . PATH_SEPARATOR . 'lib' . PATH_SEPARATOR . 'lib/FuseSource'); require_once("Stomp/Stomp.php"); require_once("Stomp/Frame.php"); require_once("Stomp/Message.php"); require_once("Stomp/Message/Map.php"); // make a connection to ActiveMQ if ($dbg) error_log("Making connection to " . ACTIVEMQ_STOMP_URL . "..."); $con = new FuseSource\Stomp\Stomp(ACTIVEMQ_STOMP_URL); // connect $con->connect(ACTIVEMQ_USERNAME, ACTIVEMQ_PASSWORD); // real data $body = array('map' => array('entry' => $entries)); $body = array('test' => 'foo', 'othertest' => 1234); // dummy data $header = array('transformation' => 'jms-map-json'); $mapMessage = new FuseSource\Stomp\Message\Map($body, $header); if ($dbg) error_log("Calling send..."); $con->send("/queue/integration.account_update", $mapMessage, array()); This caused the server to receive a message, but it's not of type javax.jms.MapMessage: [java] Jul 25, 2012 10:30:29 PM ltd.yavin.liveauction.jms.GenericConsumer onMessage [java] INFO: XXX message class org.apache.activemq.command.ActiveMQTextMessage: ActiveMQTextMessage {commandId = 3, responseRequired = false, messageId = ID:uberneek-33640-1343230073443-8:3:-1:1:1, originalDestination = null, originalTransactionId = null, producerId = ID:uberneek-33640-1343230073443-8:3:-1:1, destination = queue://integration.account_update, transactionId = null, expiration = 0, timestamp = 1343230229732, arrival = 0, brokerInTime = 1343230229732, brokerOutTime = 1343230229733, correlationId = null, replyTo = null, persistent = false, type = null, priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = null, marshalledProperties = null, dataStructure = null, redeliveryCounter = 0, size = 1059, properties = {transformation-error=org/xmlpull/v1/XmlPullParserException, transformation=jms-map-json}, readOnlyProperties = true, readOnlyBody = true, droppable = false, text = {"test":"foo","othertest":1234}} My server then rejects the message, because it's coded to only accept MapMessage objects. I can see the conversation going over the wire via wireshark: CONNECT login:zencart passcode:premierrange .CONNECTED heart-beat:0,0 session:ID:uberneek-33640-1343230073443-8:4 server:ActiveMQ/5.7-SNAPSHOT version:1.0 . SEND transformation:jms-map-json destination:/queue/integration.account_update {"test":"foo","othertest":1234}.DISCONNECT . Assuming I'm going to stick with the new client and use Stomp 1.1, can you suggest why the message being sent isn't recognised as a MapMessage on the server side? I'm sure part of the point here was to show that 5.7-SNAPSHOT can communicate with the old 1.0 Stomp client. This failed for me but I'm not sure if you want me to do further debugging, as it failed within the activemq code and I presume you can reproduce that error on your system and debug far better than I can. Nick -- View this message in context: http://activemq.2283324.n4.nabble.com/5-5-to-5-6-upgrade-stomp-client-suddenly-gets-User-name-xyz-or-password-is-invalid-tp4654229p4654357.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.