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

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

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    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

        Issue Links

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              smsiebe Steve Siebert

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment