Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-7079

JMSConduit – is not removing entry from corelationMap if relpyMessage is null (timeout)

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.1.7
    • 3.0.13, 3.1.11, 3.2.0
    • JMS
    • None
    • apache CXF 3.0.5
      TIBCO

    • Guru

    Description

      We have the problem, that if a timeout is raised the temporary queue is not been deleted.
      After code review of the JmsConduit class in both 3.0.5 and even in 3.1.7 we have seen, that in case of a timeout, cxf is only raises only an RuntimeException (JmsConduit line 256)
      javax.jms.Message replyMessage = jmsTemplate.receiveSelected(replyToDestination, messageSelector);
      if (replyMessage == null)

      { throw new RuntimeException("Timeout receiving message with correlationId " + correlationId); }

      else

      { doReplyMessage(exchange, replyMessage); }

      And RuntimeException is not handled in JMSConduit resulting in correlationMap is not removing the entry.

      public static Message receive(Session session,
      Destination replyToDestination,
      String correlationId,
      long receiveTimeout,
      boolean pubSubNoLocal) {
      ResourceCloser closer = new ResourceCloser();
      try

      { String messageSelector = correlationId == null ? null : "JMSCorrelationID = '" + correlationId + "'"; javax.jms.Message replyMessage = consumer.receive(receiveTimeout); if (replyMessage == null) { throw new RuntimeException("Timeout receiving message with correlationId " + correlationId); }


      Is this the problem why the temporary queue is not been closed in case of a timeout? Is there an solution for this problem?

      Attachments

        Issue Links

          Activity

            People

              cschneider Christian Schneider
              kalarkar ARSLAN ALI
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: