Giriş
İmzası şöyle. jakarta.jms.ConnectionFactory arayüzünü gerçekleştiren bir sınıf bekliyor.
public static StreamSource<Message> jmsQueue(String name, SupplierEx<? extends ConnectionFactory> factorySupplier);
JMS bağlantısının kurulabilmesi için şu yöntemlerden birisini yapmak gerekir
1. Member Class Path'e JMS client bağımlılığı eklenir.
Açıklaması şöyle
To use a JMS broker, such as ActiveMQ, you need the client libraries on your members' classpath.
Örneğin
Şöyle member'daki pom.xml dosyasında şöyle yaparız
<dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-client-jakarta</artifactId> <version>5.18.2</version> </dependency>
2. JobConfig nesnesine addJar() çağrısı ile gerekli client jar'ları eklenir.
Bu yöntemi burada gördüm. Ama bence iyi bir çözüm değil
Örnek
Şöyle yapmak gerekir
jobConfig.addJar("artemis-jakarta-client-all-2.30.0.jar");Kullanım
Örnek - Artemis
Şöyle yaparız
import org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory;
Pipeline pipeline = Pipeline.create();
pipeline.readFrom(Sources.jmsQueue("JCG_QUEUE",
() -> new ActiveMQConnectionFactory("tcp://activemq:61616")))
.withoutTimestamps()
.writeTo(Sinks.logger()
);
Hiç yorum yok:
Yorum Gönder