hi,

i want to send jms messages from a servlet to a message driven bean running in
the jboss server. but when i start it, this exception occurs:

[Default] Exception: Invalid transaction id.
[Default] javax.jms.JMSException: Invalid transaction id.
[Default]       at 
org.jbossmq.SpyXAResourceManager.addMessage(SpyXAResourceManager.java:80)
[Default] 
[Default]       at org.jbossmq.SpySession.sendMessage(SpySession.java:381)
[Default] 
[Default]       at org.jbossmq.SpyQueueSender.send(SpyQueueSender.java:103)
[Default] 
[Default]       at org.jbossmq.SpyQueueSender.send(SpyQueueSender.java:62)
[Default] 
[Default]       at com.xlinkbase.servlet.Kicker.Kicker.doPost(Kicker.java:133)
[Default] 
[Default]       at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
[Default] 
[Default]       at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
[Default] 
[Default]       at 
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)
[Default] 
[Default]       at org.apache.tomcat.core.Handler.service(Handler.java:287)
[Default] 
[Default]       at 
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
[Default] 
[Default]       at 
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
[Default] 
[Default]       at 
org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
[Default] 
[Default]       at 
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)
[Default] 
[Default]       at 
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
[Default] 
[Default]       at 
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
[Default] 
[Default]       at java.lang.Thread.run(Thread.java:484)

what's wrong? what does "Invalid transaction id" mean, i don't want to use
transactions at all.
i use jboss-2.4beta with tomcat 3.2.2, jdk 1.3 on suse linux 2.2.14.

please help me,
thanks.

here are fragments of the servlet code:

...
  public void init (ServletConfig config) throws ServletException
  {
    super.init(config);

    try
    {

      servletID = System.currentTimeMillis();

      ctx = getInitialContext();
      queueCtx = (Context)ctx.lookup(JMS_QUEUES_CONTEXT);
      qconFactory = (QueueConnectionFactory) ctx.lookup(JMS_FACTORY);
      qcon = qconFactory.createQueueConnection();
      qsession = qcon.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
      queueInput = (Queue) queueCtx.lookup("Kicker");
      queueOutput = (Queue) queueCtx.lookup("Controller");
      qsender = qsession.createSender(queueOutput);
      qreceiver = qsession.createReceiver(queueInput);
      qreceiver.setMessageListener(this);

      qcon.start();


    } catch (NamingException ne) {
      System.err.println("Naming exception: " + ne.getMessage());
      ne.printStackTrace();
    } catch (JMSException jmse) {
      System.err.println("JMS exception: " + jmse.getMessage());
      jmse.printStackTrace();
    }
  }
...

  public void doPost (HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException
  {

...

      Message msg = qsession.createTextMessage(new String(buffer));
      msg.setJMSReplyTo(queueInput);
      msg.setStringProperty("Sender", "Kicker");
      msg.setIntProperty("RequestId", requestId);

      qsender.send(msg);      <== here the exception occurs

...

_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to