NameError, missing class name com.ibm.mq.jms.MQQueueConnectionFactory

Hello,

I have a JMS plugin configuration with purpose of connecting to IBM MQ. After starting the pipeline I get:

> 
> [WARN ] 2023-05-31 10:38:14.348 [[main]<jms] jms - JMS Consumer Died {:exception=>"NameError", 
> :exception_message=>"missing class name (`com.ibm.mq.jms.MQQueueConnectionFactory')", 
> :backtrace=>["org/jruby/javasupport/JavaPackage.java:252:in `method_missing'", 
> "(eval):1:in `initialize'", "org/jruby/RubyKernel.java:1048:in `eval'", 
> "/u01/logstash/vendor/bundle/jruby/2.5.0/gems/jruby-jms-1.3.0-java/lib/jms/connection.rb:167:in `initialize'", 
> "/u01/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-input-jms-3.1.2-java/lib/logstash/inputs/jms.rb:225:in `run'", 
> "/u01/logstash/logstash-core/lib/logstash/java_pipeline.rb:409:in `inputworker'", 
> "/u01/logstash/logstash-core/lib/logstash/java_pipeline.rb:400:in `block in start_input'"]}

In the config I have included a reference to the correct jar's (I believe):

input {
  jms {
    ...
    factory => 'com.ibm.mq.jms.MQQueueConnectionFactory'
    pub_sub => false
   ...
    require_jars => ['/u01/logstash/logstash-core/lib/jars/javax.jms.jar',
                     '/u01/logstash/logstash-core/lib/jars/java-json.jar',
                     '/u01/logstash/logstash-core/lib/jars/com.ibm.mqjms.jar',
                     '/u01/logstash/logstash-core/lib/jars/com.ibm.mq.allclient-9.3.2.0.jar'
                    ]

    ...
}

In short: the missing class name IS present in the com.ibm.mq.allclient-9.3.2.0.jar but logstash complains about it missing. If I remove that jar, I get "class def not found" but if I have the jar added I get the above error.

What do I overlook?

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.