Setting up a Solace connection with IBM CDC using JMS

Hello everyone,

I need assistance setting up a connection between IBM CDC and Solace PubSub Standard using the JMS API. I’ve copied the JAR files (sol-jms-10.25.1 and sol-common-10.25.1) into the Access Server lib directory, but there’s still no indication of a JMS target in the IBM Management Console. I also copied the JAR files to the lib directory of the DB2 replication engine in IBM CDC and attempted to configure the connection within the IBM DB2 instance by selecting the JMS/TCP communication protocol and specifying the Solace JARs. Despite these efforts, I keep encountering a destination error. Additionally, I have created the necessary topics, queues, and connection factory in Solace.

Any guidance would be greatly appreciated!

Thank you in advance.

Comments

  • amackenzie
    amackenzie Member, Employee Posts: 268 Solace Employee

    The exact error message would be useful.

    In JMS, you need to provide the connection factory name as well as where it will find its JNDI registry to lookup the cf, and queues/topics.

    In Solace broker JNDI, you need to authenticate with is using properties passed as "additional properties" in most JMS apps. I have no experience with the IBM CDC setup of JMS.

    You need to provide:

    java.naming.security.principal with your client username

    java.naming.security.credentials with your client password

    Solace_JMS_VPN with your Message VPN name

    There are others, and this only applies to basic auth. There are more if you are using other auth types. A reference can be found here:

    JMS Properties Reference

    I hope this gets you further. Specific details and error messages will help us help you ;)

  • AAli
    AAli Member Posts: 4

    Hello @amackenzie , thank you for responding, below are some more details:

    We have tried almost everything possible but still unable to crack the issue. Here are the steps that we have followed:

    1:- Downloaded JMS libraries from solace, contains 3 files named: "sol-common-10.25.1", "sol-jms-10.25.1", "sol-jms-10.25.1-javadoc"

    2:- Placed these libraries in the BIN folder of IBM CDC installation path (as recommended by IBM)

    3:- Created Message VPN, under the message VPN —> Access Control, defined Client Profile and Client Username

    4:- Under "JMS JNDI", Enabled JNDI, created "Connection Factory" and under Topics created JMS topic

    5:- From IBM CDC, created Event Server Instance, added Solace JMS Libraries, created JMS connection by adding details relevant to JMS Connection Factory settings defined in Solace. We are using below details in connection settings:

    Initial Context Factory: com.solacesystems.jndi.SolJNDIInitialContextFactory

    Provider URL: smf://localhost:55555

    6:- Tested the connection but it throws following error:

    "Engine Communications Connection Test Failed. Error: IBM Infosphere Change Data Capture Failed to connect to specified JMS Destination. Error: javax.jms.jmsexception"

  • Umbreen Siddique
    Umbreen Siddique Member Posts: 2
    edited November 13 #4

    Shall you we also need to add jndi-1.2.1.jar in Event Server? Anyone can guide me with this too regarding the above context.

  • Umbreen Siddique
    Umbreen Siddique Member Posts: 2

    @Aaron Can you guide us?

  • Aaron
    Aaron Member, Administrator, Moderator, Employee Posts: 634 admin

    I don't have IBM MQ, or know it at all. There are no more descriptive error messages on the connection attempt?

    Something simple to try: tcp:// instead of smf:// ?

    On the Solace event broker, if you look at the event.log do you see any connection attempts?

    @amackenzie is our resident MQ expert, he already provided some tips, and asked for more info / logs / errors. Any more details, please! Your exact / total config would probably help too.

  • AAli
    AAli Member Posts: 4
    edited November 14 #7

    Hello, and thank you for your response, but we just managed to sort this out today. There were quite a few things going wrong, one of the major ones being the IBM CDC Event Server version 11.3, which had some known issues with JMS. We will compile the debugging steps along with the measures that we have taken to resolve this and post them on the community in a couple of days for everyone.

  • Aaron
    Aaron Member, Administrator, Moderator, Employee Posts: 634 admin

    Hey, that's great that you sorted out your issue! 🎉 Glad to hear it. I'm curious about what the "quite a few things going wrong"..!