0

I am trying to connect JMSToolbox to an app that is driven by JMS queues running on OpenLiberty.

I am using Open liberty version 22. Specifically 22.0.0.11-202210101601

As far as I can tell, the correct documentation to follow is https://github.com/jmstoolbox/jmstoolbox/wiki/2.2-Setup-for-IBM-LibertyProfile

The installed features I have on the Open Liberty server from the documentation are as follows:

  • restConnector-2.0 (note restConnector-1.0 as specified in the documentation does not seem to be available)
  • appSecurity-2.0
  • wasJmsClient-2.0
  • wasJmsServer-1.0

Note I was not able to install restConnector-1.0 from the documentation as I could only find restConnector-2.0.

For the extra jars, I was only able to find restConnector.jar

I could not find the other jars specified in the documentation:

  • com.ibm.ws.ejb.thinclient_x.y.z.jar (from <was_full_home>/runtimes)
  • com.ibm.ws.orb_x.y.z.jar (from <was_full_home>/runtimes)
  • com.ibm.ws.sib.client.thin.jms_x.y.z.jar (from <was_full_home>/runtimes) (tested with x.z.y ==8.5.5.0+, 9.0.0.0)

Where do I get these jars from? I'm not sure what WAS Full Home means. Am I supposed to take them from a copy of WAS? Are these Jars proprietary?

Thanks,

John

titou10
  • 2,814
  • 1
  • 19
  • 42
John Deverall
  • 5,954
  • 3
  • 27
  • 37

1 Answers1

0

"WAS full" refers to "traditional" WebSphere Application Server. You can download it following this page https://www.ibm.com/cloud/blog/websphere-trial-options-and-downloads

WAS full home is shorthand for WAS installation directory, typically /IBM/WebSphere/AppServer.

These jars are included in the /runtimes subdirectory after you installed the product. So typical approach following above page would be:

... but that would take a while...

So alternatively you could (if you have docker), which should be much faster than whole mumbo-jumbo with installation:

$ cd opt/IBM/WebSphere/AppServer/runtimes/
$ ls -la
total 343540
com.ibm.jaxrs1.1.thinclient_9.0.jar
com.ibm.jaxrs2.0.thinclient_9.0.jar
com.ibm.jaxws.thinclient_9.0.jar
com.ibm.ws.admin.client.forJython21_9.0.jar
com.ibm.ws.admin.client_9.0.jar
com.ibm.ws.ejb.embeddableContainer_9.0.jar
com.ibm.ws.ejb.embeddableContainer_nls_9.0.jar
com.ibm.ws.ejb.portable_9.0.jar
com.ibm.ws.ejb.thinclient_9.0.jar
com.ibm.ws.jpa-2.0.thinclient_9.0.jar
com.ibm.ws.jpa-2.1.thinclient_9.0.jar
com.ibm.ws.messagingClient.jar
com.ibm.ws.orb_9.0.jar
com.ibm.ws.sib.client.thin.jms_9.0.jar
com.ibm.ws.sib.client_ExpeditorDRE_9.0.jar
com.ibm.ws.webservices.thinclient_9.0.jar
com.ibm.xml.thinclient_9.0.jar
endorsed
properties
sibc.jmsra.rar
sibc.nls.zip

  • copy required files from the container:

docker cp <containerID>:/opt/IBM/WebSphere/AppServer/runtimes/xyz.jar .

Gas
  • 17,601
  • 4
  • 46
  • 93
  • Thanks. I followed your instructions. I feel I'm closer but do not have a connection yet. JMSToolBox appears to be throwing an exception line 164 of LibertyQManager. https://github.com/jmstoolbox/jmstoolbox/blob/dev/org.titou10.jtb.qm.liberty/src/org/titou10/jtb/qm/liberty/LibertyQManager.java#L164 Something to do with JMX. – John Deverall Nov 09 '22 at 23:44
  • @JohnDeverall add stacktrace to your question or create new one – Gas Nov 10 '22 at 00:12
  • Thanks - I figured it out. I hadn't added restConnector.jar, which became pretty obvious when going through the code. I've moved on to an SSL connection issue. – John Deverall Nov 10 '22 at 00:19
  • Check this page - https://www.ibm.com/docs/en/was-liberty/base?topic=manually-connecting-liberty-by-using-jmx – Gas Nov 10 '22 at 00:24
  • Thanks. I've posted another question at https://stackoverflow.com/questions/74514603/openliberty-not-accepting-jms-connection-from-jmstoolbox. I'm hoping I may be able to lean on your expertise again. It is perplexing me! – John Deverall Nov 21 '22 at 05:31