ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Urgent!!! NEONMSG parser failed to process 'ü' character

Post new topic  Reply to topic
 Urgent!!! NEONMSG parser failed to process 'ü' character « View previous topic :: View next topic » 
Author Message
Yang Yu
PostPosted: Mon Mar 29, 2004 11:09 pm    Post subject: Urgent!!! NEONMSG parser failed to process 'ü' character Reply with quote

Novice

Joined: 04 Nov 2002
Posts: 12

NEONMSG parser failed to process character 'ü'.


Next is our message flow design:

Mainflow
InputNode1 (BLOB domain) -> ComputeNode1 -> Trace1 -> OutputNode1 (To subflow)


Subflow
InputNode2 (NEONMSG domain) -> Trace2 -> ComputeNode2 -> OutputNode2


We have a message flow which start with a NEON formatted IDOC message from our Sybase SAP R/3 Adapter. When the IDOC (Including a 'ü' character) arrives in the mainflow input queue, the flow processing will begin. For mainflow input queue, the message domain is set as a BLOB format to enhance performance and routing. After the IDOC has been routed to a subflow flow, input queue message domain is changed to 'NEONMSG' which parses the IDOC messages and gives us a tree similar to an XML message and subflow compute node will get the Parsed NEONMSG tree. Everything works fine for english character.

When our IDOC includes a German character 'ü', it failed to parsing that and OutputNode2 is changed to 'n'. (In Trace1, it is 'ü', in Trace2, it is changed to 'n')

Our purpose is that character 'ü' appears in InputNode1 and 'ü' also appears in OutputNode2, but it is changed to 'n' on OutputNode2


Next is our ComputeNode ESQL

ComputeNode1:

SET "OutputRoot"."MQRFH2"."CodedCharSetId"=437;

SET "OutputRoot"."Properties"."Encoding"=785;
SET "OutputRoot"."MQMD"."Encoding"=785;
SET "OutputRoot"."MQMD"."CodedCharSetId"=437;
etc ...


ComputeNode2:

SET OutputRoot.Properties = InputRoot.Properties;
SET OutputRoot.MQMD = InputRoot.MQMD;
SET OutputRoot.MQMD.Format = 'MQSTR';
SET OutputRoot.Properties.MessageFormat = 'XML' ;

SET "OutputRoot"."MQMD"."Encoding"= 273;
SET "OutputRoot"."MQMD"."CodedCharSetId"= 1208;
etc ...



Also, it failed when we change as

ComputeNode1:

SET "OutputRoot"."MQRFH2"."CodedCharSetId"=1208;


It also failed when we change as

ComputeNode1:

SET "OutputRoot"."MQRFH2"."CodedCharSetId"=437;
SET "OutputRoot"."Properties"."Encoding"=273;
SET "OutputRoot"."MQMD"."Encoding"=273;
SET "OutputRoot"."MQMD"."CodedCharSetId"=1208;
etc ...

Any help would be appreciated!!!
Back to top
View user's profile Send private message
wooda
PostPosted: Tue Mar 30, 2004 4:24 am    Post subject: Reply with quote

Master

Joined: 21 Nov 2003
Posts: 265
Location: UK

I'm not sure about the NEON domain but MRM and XML parsers will convert the input bitstream into UTF-8 when parsing and then it will be convert again to the output CCSID when the output message is written.
From the description you have given it seems it is the conversion from Input CCSID to UTF-8 which has caused the problem.

At trace1 no conversion will have happened as no parsing has been done. (the message is still in BLOB domain).
At trace2 the message has been parsed (and converted to UTF-.

What was you input CCSID as defined in the input MQMD (or MQRFH2 if you have one). ?

Check there is a a valid conversion from InputCCSID to UTF-8 for this character.

Is this character used in a string or a binary field in NEON format ?
Back to top
View user's profile Send private message
Yang Yu
PostPosted: Wed Mar 31, 2004 5:43 am    Post subject: Reply with quote

Novice

Joined: 04 Nov 2002
Posts: 12

Appreciate your help and thank you for your reply. Actually, we just resolve this issue 'temporarily'. I want to clarify something in my previous description

First, my wording "failed" should be "failed" by translating the German character 'ü' incorrectly as 'n'.

The second, 'ü' is not in Trace1, it should be on InputNode1 queue. We just stopped mainflow and original message stored on the first input queue, then we saw the 'ü' character. Trace1 is BLOB message. The mainflow send BLOB message to mainflow output queue and the second message flow received it and translate BLOB message to NEONMSG message.

The third, Our environment is WMQI 2.1, Sybase SAP R/3 adapter 3.9 and MQ 5.3 on Sun Solaris

We fix this issue as follows:

On mainflow (BLOB domain) ComputeNode1, we changed as next, then it works.

SET "OutputRoot"."MQRFH2"."CodedCharSetId"=923;
SET "OutputRoot"."Properties"."Encoding"=273;
SET "OutputRoot"."MQMD"."CodedCharSetId"=923;
SET "OutputRoot"."MQMD"."Encoding"=273;

We tried to change MQMD and MQRFH2's CCSID to 819, it failed. We do not know why it works only for 923. Right now, we tested the message flow for German, French, Spanish and English Languages, it works OK. But it does not work for Japanese Language (although we try to use CodedCharSetId=943).

Our purpose is that this message flow will support multiple languagues. Does some one know if it's possible to do it?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Urgent!!! NEONMSG parser failed to process 'ü' character
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.