Reputation: 3709
I am facing issue while publishing messages to the IBM Websphere MQ Queue via PublishJMS processor.
Configuration of PublishJMS processor & JMS Controller Service, I have verified there is no problem with the MQ connection. I believe there is some additional property I need to set in either the PublishJMS or Controller Service.
Below is the error message stack.
Caused by: com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: The property 'JMS_IBM_MsgType' should be set using type 'java.lang.Integer', not 'java.lang.String'.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_102]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_102]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_102]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_102]
at com.ibm.msg.client.commonservices.j2se.NLSServices.createException(NLSServices.java:314) ~[na:na]
at com.ibm.msg.client.commonservices.nls.NLSServices.createException(NLSServices.java:228) ~[na:na]
at com.ibm.msg.client.jms.internal.JmsErrorUtils.createException(JmsErrorUtils.java:104) ~[na:na]
at com.ibm.msg.client.jms.internal.JmsMessageImpl.checkSettablePropertyName(JmsMessageImpl.java:2197) ~[na:na]
at com.ibm.msg.client.jms.internal.JmsMessageImpl.setStringProperty(JmsMessageImpl.java:1690) ~[na:na]
at com.ibm.jms.JMSMessage.setStringProperty(JMSMessage.java:1491) ~[na:na]
at org.apache.nifi.jms.processors.JMSPublisher$1.createMessage(JMSPublisher.java:87) ~[nifi-jms-processors-1.1.0.2.1.2.0-10.jar:1.1.0.2.1.2.0-10]
at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:603) ~[spring-jms-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.jms.core.JmsTemplate$4.doInJms(JmsTemplate.java:584) ~[spring-jms-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:494) ~[spring-jms-4.2.4.RELEASE.jar:4.2.4.RELEASE]
... 17 common frames omitted
Upvotes: 1
Views: 978
Reputation: 10642
It looks like you are hitting a known defect: APAR IT02814 (JMSCC0051: THE PROPERTY 'JMS_IBM_REPORT_PASS_CORREL_ID' SHOULD SET USING TYPE 'JAVA.LANG.INTEGER', NOT 'JAVA.LANG.STRING'.)
It states that pre-v7.0 IBM MQ Classes for JMS allowed passing a non-INT, v7.0 and higher are more strict. IBM has added a fix to v7.5.0.5 and to v8.0.0.2 to allow this to continue to work, the APAR also has suggestions on how to change the application to work without the fix.
Upvotes: 1