Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Jakarta Messaging, #2989 #3043

Merged
merged 10 commits into from Dec 1, 2023
Merged

feat: Jakarta Messaging, #2989 #3043

merged 10 commits into from Dec 1, 2023

Conversation

patriknw
Copy link
Member

  • Converted from Alpakka JMS
  • Jakarta Messaging 3.1
  • jakarta.jms package instead of javax.jms

Also includes fix to close sessions on connection loss from #3041

Refs #2989

* Converted from Alpakka JMS
* Jakarta Messaging 3.1
* jakarta.jms package instead of javax.jms
@ennru
Copy link
Member

ennru commented Nov 30, 2023

It would need to be added in CI check-build-test.yml and for labelling autolabeler.yml.

libraryDependencies ++= Seq(
"jakarta.jms" % "jakarta.jms-api" % "3.1.0", // Eclipse Public License 2.0 + + GPLv2
"org.apache.activemq" % "activemq-broker" % "6.0.0" % Test, // ApacheV2
"org.apache.activemq" % "activemq-client" % "6.0.0" % Test, // ApacheV2
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have a problem. Jakarta support was added to activemq 6.0.0, but that requires JDK 17. We test and release with 11.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess the answer to this is adding a Docker container for it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the client also requires 17, I'll see if there is an easy way to switch to another broker

build.sbt Outdated Show resolved Hide resolved
libraryDependencies ++= Seq(
"jakarta.jms" % "jakarta.jms-api" % "3.1.0", // Eclipse Public License 2.0 + + GPLv2
"org.apache.activemq" % "activemq-broker" % "6.0.0" % Test, // ApacheV2
"org.apache.activemq" % "activemq-client" % "6.0.0" % Test, // ApacheV2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess the answer to this is adding a Docker container for it.

* because support for Jakarta Messaging was addd in ActiveMQ 6.0,
  which requires JDK 17
* using Artermis EmbeddedActiveMQ broker
libraryDependencies ++= Seq(
"jakarta.jms" % "jakarta.jms-api" % "3.1.0", // Eclipse Public License 2.0 + + GPLv2
"org.apache.activemq" % "artemis-jakarta-server" % "2.31.2" % Test, // ApacheV2
"org.apache.activemq" % "artemis-jakarta-client" % "2.31.2" % Test, // ApacheV2
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Had to rewrite the tests to use Artemis instead. Was not trivial, but working now. 139f1f2

Copy link
Member

@ennru ennru left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

docs/src/main/paradox/jakarta-jms/browse.md Outdated Show resolved Hide resolved
docs/src/main/paradox/jakarta-jms/consumer.md Outdated Show resolved Hide resolved
docs/src/main/paradox/jakarta-jms/consumer.md Outdated Show resolved Hide resolved
docs/src/main/paradox/jakarta-jms/producer.md Outdated Show resolved Hide resolved
@patriknw
Copy link
Member Author

patriknw commented Dec 1, 2023

unrelated fail in other modules

@patriknw patriknw merged commit 497cc50 into main Dec 1, 2023
48 of 50 checks passed
@patriknw patriknw deleted the wip-jakarta-jms-patriknw branch December 1, 2023 06:52
@patriknw patriknw modified the milestone: 7.0.1 Dec 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants