[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

Character encoding issue when posting a message to a queue that is configured on a mainframe machine

Posted on 2010-11-12
5
Medium Priority
?
1,397 Views
Last Modified: 2013-11-13
We are facing an issue with character encoding when posting a message to a queue that is configured on a mainframe machine.

Here are the details of the setup:

Sender: JMS using Websphere MQ Client API version 6

Receiver:  Mainframe server with CCSID value for queue manager set to 500 (EBCDIC)

When we send the message from sender, and retrieve it using JMS api’s, message is available in the correct format. However, if message is retrieved on the mainframe server, it has additional special characters at the beginning of the message.

If the message is sent using MQ API’s directly (bypassing JMS), and MQMessage.characterSet property is set to 500, the message is retrieved correctly without any special characters on the mainframe server.

We need to know the equivalent message property that needs to be set from JMS API’s that will have the same effect as setting MQMessage.characterSet from MQ API’s directly.

Already tried setting JMS_IBM_Character_Set to 500 on TextMessage instance but this doesn’t work.

Also, please let us know how to remove JMS specific header from the message before it is posted to the queue. We think, this is creating the problem as the message body is correctly converted.
0
Comment
Question by:pvasha
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
5 Comments
 
LVL 86

Expert Comment

by:CEHJ
ID: 34119935
Start by executing the following (or more conveniently and reusably http://technojeeves.com/joomla/index.php/free/54-javasystemproperties ) at each end - what do you get?


System.out.println(System.getProperty("file.encoding"));

Open in new window

0
 

Accepted Solution

by:
pvasha earned 0 total points
ID: 34142762
The issue was the extra message header created by JMS which was not recognized by non JMS Clients.

The following is the solution we implemented:
We set the target client attribute on MQ Queue instance to which the message was sent. The value was set to 1 which corresponds to non JMS Client.

This solution is valid for a spring based application.

We are planning to move the app to MULE, so the JMS end points will be configured using Mule XML. Is anybody aware of setting the target client attribute in Mule Configuration XML.

Best Regards
0
 

Author Comment

by:pvasha
ID: 36151362
Please close this thread
0
 
LVL 60

Expert Comment

by:Kevin Cross
ID: 36929518
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A solution for Fortify Path Manipulation.
The SignAloud Glove is capable of translating American Sign Language signs into text and audio.
This tutorial explains how to use the VisualVM tool for the Java platform application. This video goes into detail on the Threads, Sampler, and Profiler tabs.
Simple Linear Regression
Suggested Courses

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question