JMS: handle interrupt and harden connection management

Thread.interrupt while activemq is in an IO operation not only
interrupts that operation but also kills and disposes the complete jms
connection to the server. This behaviour is valid in theory but wrong in
practice. A Thread.interrupt should not terminate the connection and
therefore the sessions of other threads.

This fix handles auto-failover in the scout jms wrapper and ensures
seamless continuation of subscriber listeners as well as subsequent
publish operations.

Change-Id: I1aca4ed115e31168259ca899ac96f1fa9e02ceba
Signed-off-by: Ivan Motsch <ivan.motsch@bsiag.com>
Reviewed-on: https://git.eclipse.org/r/141790
Tested-by: CI Bot
Reviewed-by: Tobias Schlatter <tobias.schlatter@bsi-software.com>
5 files changed
tree: 19a8a5ac9c7455424dc296f3165bad0196b3b281
  1. license_files/
  2. org.eclipse.scout.dev.jetty/
  3. org.eclipse.scout.dev.jetty.test/
  4. org.eclipse.scout.dev.jetty.test.affix/
  5. org.eclipse.scout.jaxws.apt/
  6. org.eclipse.scout.json/
  7. org.eclipse.scout.rt/
  8. org.eclipse.scout.rt-settings/
  9. org.eclipse.scout.rt.client/
  10. org.eclipse.scout.rt.client.test/
  11. org.eclipse.scout.rt.jackson/
  12. org.eclipse.scout.rt.jackson.test/
  13. org.eclipse.scout.rt.mom.api/
  14. org.eclipse.scout.rt.mom.api.test/
  15. org.eclipse.scout.rt.mom.jms/
  16. org.eclipse.scout.rt.mom.jms.test/
  17. org.eclipse.scout.rt.platform/
  18. org.eclipse.scout.rt.platform.test/
  19. org.eclipse.scout.rt.rest/
  20. org.eclipse.scout.rt.rest.test/
  21. org.eclipse.scout.rt.server/
  22. org.eclipse.scout.rt.server.commons/
  23. org.eclipse.scout.rt.server.commons.test/
  24. org.eclipse.scout.rt.server.jaxws/
  25. org.eclipse.scout.rt.server.jaxws.test/
  26. org.eclipse.scout.rt.server.jdbc/
  27. org.eclipse.scout.rt.server.jdbc.test/
  28. org.eclipse.scout.rt.server.jms/
  29. org.eclipse.scout.rt.server.test/
  30. org.eclipse.scout.rt.serverbridge/
  31. org.eclipse.scout.rt.shared/
  32. org.eclipse.scout.rt.shared.test/
  33. org.eclipse.scout.rt.svg.client/
  34. org.eclipse.scout.rt.svg.client.test/
  35. org.eclipse.scout.rt.svg.ui.html/
  36. org.eclipse.scout.rt.team-project-set/
  37. org.eclipse.scout.rt.ui.html/
  38. org.eclipse.scout.rt.ui.html.scriptprocessor/
  39. org.eclipse.scout.rt.ui.html.scriptprocessor.test/
  40. org.eclipse.scout.rt.ui.html.selenium/
  41. org.eclipse.scout.rt.ui.html.test/
  42. shell_scripts/
  43. .gitattributes
  44. .gitignore
  45. .gitreview
  46. CONTRIBUTING.md
  47. pom.xml
  48. README.md
README.md

Eclipse Scout - RT

[Eclipse Scout] 1 is a mature and open framework for modern, service oriented business applications. It substantially boosts developer productivity and is simple to learn.

This Repository Eclipse Scout RT contains the source for the runtime components embedded in the applications build on top of the Eclipse Scout Framework.

Downloads

The content of this repository is build on the Eclipse infrastructure and the different versions are available on several [P2 Update Sites] 2.

The easiest way to start with Eclipse Scout is to download Eclipse for Scout Developers Eclipse for Scout Developers on the [Eclipse downloads page] 3.

Documentation & Links

  • [Eclipse Scout Wiki] 4
  • [Eclipse Scout Forum] 5
  • [Eclipse Bugzilla] 6 (Product=Scout; Component=Scout)

Contribution Guidelines

We welcome any kind of contributions (Bug report, documentation, code contribution...). Please read the [Eclipse Scout Contribution page] 7 to know more about it.

The contribution process of Eclipse Scout is hosted on tools deployed by the Eclipse Foundation (involing [Bugzilla] 6, Gerrit, Hudson, MediaWiki...).

External tools like the GitHub tracker and pull requests are not supported.

Get in Touch

To get in touch with the Eclipse Scout community, please open a thread in the [Eclipse Scout Forum] 5 or send a mail to [our mailing list] 8: scout-dev@eclipse.org

License

[Eclipse Public License (EPL) v1.0] 9