Throwing error When posting messages to MQ

Document ID : KB000004705
Last Modified Date : 14/02/2018
Show Technical Document Details
Issue:

Created a virtual service which uses IBM Native send/receive step. Configured Queue details properly and used a Devtest property which hold the payload data and added it in content tab to publish message to MQ server. When trying to publish this message from VS, getting below error

| Unable to write inner payload: Input length = 1 
============================================================================ 
| Step: SendOutboundPaymentRequest 
---------------------------------------------------------------------------- 
| Message: Unable to write inner payload: Input length = 1 
---------------------------------------------------------------------------- 
| Trapped Exception: Unable to write inner payload: Input length = 1 
| Trapped Message: 

============================================================================ 
| Exception: 
============================================================================ 
| Message: Unable to write inner payload: Input length = 1 
---------------------------------------------------------------------------- 
| Trapped Exception: Input length = 1 
| Trapped Message: java.nio.charset.UnmappableCharacterException: Input length = 1 
---------------------------------------------------------------------------- 
STACK TRACE 
java.nio.charset.UnmappableCharacterException: Input length = 1 
at java.nio.charset.CoderResult.throwException(CoderResult.java:282) 
at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:816) 
at com.ibm.mq.jmqi.system.JmqiCodepage.stringToBytes(JmqiCodepage.java:703) 
at com.ibm.mq.MQMessage.writeString(MQMessage.java:2746) 
at com.itko.lisa.messaging.providers.ibmmq.payload.IbmMqMessagePayload.writeBodyToHeaderObject(IbmMqMessagePayload.java:652) 
at com.itko.lisa.messaging.providers.ibmmq.payload.IbmMqMessagePayload.writeBodyToHeaderObject(IbmMqMessagePayload.java:73) 

Cause:

By default character-set used in MQ step is "ISO 8951-1/ASCII". Since the back-end queue is not accepting this character set for payload data, getting an error.

Resolution:

   Change character set to UTF-8 for payload data using below changes to resolve this issue.

Click '+' -> 'Advanced' -> 'Character set':

 

Enter '1208':

Additional Information:

https://communities.ca.com/message/241942545