JMS

Java Message Service (JMS)

The Java Message Service (JMS) API is a Java message-oriented middleware API for sending messages between two or more clients. It is an implementation to handle the producer–consumer problem. JMS is a part of the Java Platform, Enterprise Edition (Java EE), and was defined by a specification developed at Sun Microsystems, but which has since been guided by the Java Community Process. It is a messaging standard that allows application components based on Java EE to create, send, receive, and read messages. It allows the communication between different components of a distributed application to be loosely coupled, reliable, and asynchronous.

Wikipedia

The Apache Pekko Connectors JMS connector provides Apache Pekko Stream sources and sinks to connect to JMS providers.

In v1.1.0, there is also a Jakarta MS connector that provides the equivalent support for Jakarta Messaging.

Project Info: Apache Pekko Connectors JMS
Artifact
org.apache.pekko
pekko-connectors-jms
1.1.0
JDK versions
OpenJDK 8
OpenJDK 11
OpenJDK 17
OpenJDK 21
Scala versions2.13.15, 2.12.20, 3.3.4
JPMS module namepekko.stream.connectors.jms
License
API documentation
Forums
Release notesGitHub releases
IssuesGithub issues
Sourceshttps://github.com/apache/pekko-connectors

Artifacts

sbt
Maven
Gradle
libraryDependencies ++= Seq(
  "org.pekko" %% "pekko-connectors-jms" % "1.1.0",
  "javax.jms" % "jms" % "1.1"
)
<properties>
  <scala.binary.version>2.13</scala.binary.version>
</properties>
<dependencies>
  <dependency>
    <groupId>org.pekko</groupId>
    <artifactId>pekko-connectors-jms_${scala.binary.version}</artifactId>
    <version>1.1.0</version>
  </dependency>
  <dependency>
    <groupId>javax.jms</groupId>
    <artifactId>jms</artifactId>
    <version>1.1</version>
  </dependency>
</dependencies>
def versions = [
  ScalaBinary: "2.13"
]
dependencies {
  implementation "org.pekko:pekko-connectors-jms_${versions.ScalaBinary}:1.1.0"
  implementation "javax.jms:jms:1.1"
}