Uploaded image for project: 'ActiveMQ'
  1. ActiveMQ
  2. AMQ-4676

ActiveMQ not compliant with JSR-250 (@PostConstruct, @PreDestroy)

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.8.0
    • Fix Version/s: 5.9.0
    • Component/s: Broker, Camel, STOMP
    • Labels:
      None
    • Patch Info:
      Patch Available

      Description

      ActiveMQ is not compliant with JSR-250, which states:
      2.5 javax.annotation.PostConstruct:
      [...]

      • The method MUST NOT throw a checked exception.
      • If the method throws an unchecked exception the class MUST NOT be put into
        service. In the case of EJBs the method annotated with PostConstruct can
        handle exceptions and cleanup before the bean instance is discarded.

      2.6 javax.annotation.PreDestroy
      (same as above)

      An exception was thrown when attempting to deploy an application using the activemq-rar-5.8 on GF 4.0, but I believe it's safe to say that this can occur in different containers - if not now, potentially between container releases.

      Included are patches that fix this in all ActiveMQ components. Most check exceptions thrown were Exception, which was changed to RuntimeException (trapped and wrapped). There were also IOExceptions being thrown, in which case ActiveMQ-broker now has an IORuntimeException class that is thrown. Any downstream catches that handled the check exceptions have been converted to catch the RuntimeExceptions.

      This was also reported under AMQ-4673, but the scope of that issue was a lot more limited.

        Attachments

        1. activemq-stomp_AMQ-4676v2.diff
          1 kB
          Steve Siebert
        2. activemq-spring_AMQ-4676v2.diff
          15 kB
          Steve Siebert
        3. activemq-camel_AMQ-4676v2.diff
          2 kB
          Steve Siebert
        4. activemq-broker_AMQ-4676v2.diff
          6 kB
          Steve Siebert

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                smsiebe Steve Siebert
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: