[jboss-user] [JBoss Messaging] - Re: Receiving XML from c++ sender

sanches do-not-reply at jboss.com
Sat Aug 1 04:04:13 EDT 2009


"timfox" wrote : 
  | You can already use a Stomp client to talk to JBoss Messaging 1.x/2.x using StompConnect (google it)
  | 

Thanks, I am already paying attention to StompConnect.

I've faced an issue which I can not resolve with StompConnect however:
Configuration is: 
- C++ client (ActiveMQ CMS over Stomp) is sender 
- JBoss 5.0 with MQ (not JBoss Messaging, sorry, I used default on JBoss 5.0) and MDB is receiver. StompConnect's thread is working inside JBoss 

When the name of the JMS topic is laconic "SERVER", c++ client sends message to topic "SERVER", and MDB listening for messages from topic "SERVER", everything is transmitted well. 

But when the name of the JMS  topic is "SERVER/TOP"  (there is slash in the name), c++  client sends message to topic "SERVER/TOP", and MDB listening for messages from topic "SERVER/TOP", an exception is thrown on JBoss side. Full stack of exception is at the end of this message. 

However, at the same time when the name of the JMS  topic is "SERVER/TOP", but c++  client sends message to topic "SERVER", and MDB still listening for messages from topic "SERVER/TOP", message is received properly. That case is detected accidentally. 

Once again in two words, MDB on JBoss can not receive message if it has been sent by cpp client to destination which contains slashes. By some reason in such case message is routed into topic which name is substring before slash.

Alex.

Exception: 
11:42:21,562 ERROR [ExceptionUtil] SessionEndpoint[7b-y2923txf-1-zooy2txf-2p9g2a-w30b3a] createTopic [8b-y2923txf-1-zooy2txf-2p9g2a-w30b3a] 
javax.jms.JMSException: There is no administratively defined topic with name:SERVER/TOP 
        at org.jboss.jms.server.endpoint.ServerSessionEndpoint.createTopic(ServerSessionEndpoint.java:321) 
        at org.jboss.jms.server.endpoint.advised.SessionAdvised.org$jboss$jms$server$endpoint$advised$SessionAdvised$createTopic$aop(SessionAdvised.java:110) 
        at org.jboss.jms.server.endpoint.advised.SessionAdvised$createTopic_N1144803973659535745.invokeTarget(SessionAdvised$createTopic_N1144803973659535745.java)
        at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111) 
        at org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105) 
        at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) 
        at org.jboss.jms.server.endpoint.advised.SessionAdvised.createTopic(SessionAdvised.java) 
        at org.jboss.jms.wireformat.SessionCreateTopicRequest.serverInvoke(SessionCreateTopicRequest.java:74) 
        at org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:143) 
        at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:908) 
        at org.jboss.remoting.transport.local.LocalClientInvoker.invoke(LocalClientInvoker.java:106) 
        at org.jboss.remoting.Client.invoke(Client.java:1708) 
        at org.jboss.remoting.Client.invoke(Client.java:612) 
        at org.jboss.remoting.Client.invoke(Client.java:600) 
        at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:189) 
        at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:160) 
        at org.jboss.jms.client.delegate.ClientSessionDelegate.org$jboss$jms$client$delegate$ClientSessionDelegate$createTopic$aop(ClientSessionDelegate.java:353) 
        at org.jboss.jms.client.delegate.ClientSessionDelegate$createTopic_N1144803973659535745.invokeTarget(ClientSessionDelegate$createTopic_N1144803973659535745.java)
        at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111) 
        at org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:92) 
        at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86) 
        at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) 
        at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170) 
        at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86) 
        at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) 
        at org.jboss.jms.client.delegate.ClientSessionDelegate.createTopic(ClientSessionDelegate.java) 
        at org.jboss.jms.client.JBossSession.createTopic(JBossSession.java:260) 
        at org.codehaus.stomp.jms.StompSession.convertDestination(StompSession.java:96) 
        at org.codehaus.stomp.jms.StompSession.sendToJms(StompSession.java:71) 
        at org.codehaus.stomp.jms.ProtocolConverter.onStompSend(ProtocolConverter.java:260) 
        at org.codehaus.stomp.jms.ProtocolConverter.onStompFrame(ProtocolConverter.java:132) 
        at org.codehaus.stomp.tcp.TcpTransport.run(TcpTransport.java:131) 
        at java.lang.Thread.run(Thread.java:619)

View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4247384#4247384

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4247384



More information about the jboss-user mailing list