Jakarta Connectors™ Architecture support in Quarkus

169 views
Skip to first unread message

George Gastaldi

unread,
Aug 8, 2023, 12:09:38 PM8/8/23
to Quarkus Development mailing list
In some cases, integration with other systems (JMS servers, Mainframes, etc) is implemented using JCA Resource Adapters (RA).  For those cases, I have developed a Quarkus JCA extension[1] which manages the RA lifecycle and provides some services (WorkManager, Transactions, etc) in Quarkus. It’s still an early prototype but you can see that it works with the Artemis Jakarta RA (as you can see in the integration-tests[2] module). It takes advantage of some existing extensions, like ArC for the CDI and Narayana-JTA for integration with the Quarkus Transaction manager.

Before promoting it to the Quarkiverse organization and improving the docs, I’d really appreciate it if you could give it a try and send your (positive or negative) feedback in this thread. 

Best Regards,  

Best Regards,

George Gastaldi

hantsy bai

unread,
Aug 9, 2023, 1:07:15 AM8/9/23
to ggas...@redhat.com, Quarkus Development mailing list
Great work, George!

A question here, what's the difference between Jakarta Resource Connector and MP Reactive Messaging connectors, is there some common concept to adapt external resources ?
---

Regards,

Hantsy Bai

Self-employed consultant, fullstack developer, agile coach, freelancer/remote worker

GitHub: https://github.com/hantsy

Twitter: https://twitter.com/@hantsy

Medium: https://medium.com/@hantsy


--
You received this message because you are subscribed to the Google Groups "Quarkus Development mailing list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to quarkus-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/quarkus-dev/375A6511-7941-46C0-97C3-EBD60F9FBE23%40redhat.com.

George Gastaldi

unread,
Aug 9, 2023, 8:18:36 AM8/9/23
to hantsy bai, Quarkus Development mailing list
Hey Hantsy,

Although JCA enables connecting to messaging systems, it’s not the only supported use case. Because JCA exists for ages (and the spec hasn’t changed much since its conception), I see the MP Reactive Messaging connectors as an evolution to connecting to messaging systems and should be preferred when possible. 
  
Best Regards,

George Gastaldi

Max Rydahl Andersen

unread,
Aug 15, 2023, 5:09:48 AM8/15/23
to George Gastaldi, Quarkus Development mailing list

Hi George,

Looks interesting - I now spotted https://github.com/quarkiverse/quarkus-ironjacamar - is this the same/different - did you move to use ironjacamar directly instead? (makes sense just understood that there were some downsides in picking up ironjacamar?)

/max

George Gastaldi

unread,
Aug 15, 2023, 7:43:50 AM8/15/23
to Max Rydahl Andersen, Quarkus Development mailing list
Hi Max,

Yes, I did. Although we can't use the WorkManager implementation because it depends on a really old JBoss Threads version, IronJacamar implements ConnectionManager pooling and transaction integration beautifully, that's why I decided to use it.

Also it kinda matches the scheme that we use the implementation in the name of the extension instead of the spec (eg. quarkus-hibernate-orm instead of quarkus-jpa)

George Gastaldi

unread,
Aug 15, 2023, 7:46:38 AM8/15/23
to Max Rydahl Andersen, Quarkus Development mailing list
For the record, I have asked the team to split the ironjacamar core module into more fine grained modules: https://github.com/ironjacamar/ironjacamar/issues/779

V. Sevel

unread,
Sep 22, 2023, 12:30:25 PM9/22/23
to Quarkus Development mailing list
> I’d really appreciate it if you could give it a try and send your (positive or negative) feedback in this thread. 

I meant to answer earlier. but this is a very welcomed extension for us.
for different reasons, we are not going to be able to ditch our horneq brokers for a while.
we started using the quarkus artemis extension with the messaging pool, but the ability to rebalance inbound connections based on topology is something very important for us.
and the artemis resource adapter does just that, plus provides transparent pooling for producers and consumers.
having ironjacamar in quarkus is going to allow us using the RA, and get the proper behavior.
a great great thank you, George, for making this happen. this was a very pleasant experience.
v.

George Gastaldi

unread,
Sep 22, 2023, 1:12:43 PM9/22/23
to Quarkus Development mailing list
Hey Vincent,

Thanks for your feedback, it was my pleasure to bring JCA support to Quarkus :) 
Now that quarkus-ironjacamar 1.0.0 is out , I think we can work with the quarkus-artemis extension maintainers to provide an additional extension there using the RA.

Best Regards, 

George Gastaldi

V. Sevel

unread,
Sep 23, 2023, 6:35:38 AM9/23/23
to Quarkus Development mailing list
yes that would be great. in the meantime we will start exercising it with our own integration.
Reply all
Reply to author
Forward
0 new messages