🎄 Happy Holidays! 🥳
Most of Solace is closed December 24–January 1 so our employees can spend time with their families. We will re-open Thursday, January 2, 2024. Please expect slower response times during this period and open a support ticket for anything needing immediate assistance.
Happy Holidays!
Please note: most of Solace is closed December 25–January 2, and will re-open Tuesday, January 3, 2023.
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
-
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 usernamejava.naming.security.credentials
with your client passwordSolace_JMS_VPN
with your Message VPN nameThere 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:
I hope this gets you further. Specific details and error messages will help us help you ;)
1 -
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"
0 -
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.
0 -
@Aaron Can you guide us?
0 -
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 ofsmf://
?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.
1 -
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.
3