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 » character set encoding issue

Post new topic  Reply to topic Goto page 1, 2  Next
 character set encoding issue « View previous topic :: View next topic » 
Author Message
WMBSAM
PostPosted: Fri Nov 06, 2009 4:09 pm    Post subject: character set encoding issue Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

Hello everyone,

I am trying to make a webservice call using the soap request node . the call fails and i receive the following error :

Quote:


Text:CHARACTER:Frame : 0 org.apache.axis2.AxisFault: Character Set Encoding from transport information [UTF-8] does not match with character set encoding in the received SOAP message [iso-8859-1]
@: org.apache.axis2.builder.BuilderUtil.validateCharSetEncoding(BuilderUtil.java:786)
@: com.ibm.broker.axis2.SoapUtilities.createSOAPMessage(SoapUtilities.java:2145)
@: com.ibm.broker.axis2.SoapUtilities.createSOAPMessage(SoapUtilities.java:1841)
@: com.ibm.broker.axis2.Axis2Requester.processResponseMessageSync(Axis2Requester.java:1037)

when i tested the same using the SOAP UI i receive the response and i can clearly see the response xml declaration as <?xml version="1.0" encoding="iso-8859-1" ?>


so do i have to set anything more in the flow any parameters so that the soap request node accepts the response message in iso-8859-1 format also??? i have also applied the recent fix then to the issue is not fixed

http://www-01.ibm.com/support/docview.wss?uid=swg1IC59116
Back to top
View user's profile Send private message
WMBSAM
PostPosted: Sat Nov 07, 2009 1:50 pm    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

just thought inform that i am able to see the reply when i am using the TCP monitor but in the flow after the SOAP request node i see the above error.

any suggestions would be more helpful. Thanks in Advance?
Back to top
View user's profile Send private message
WMBSAM
PostPosted: Sun Nov 08, 2009 9:24 pm    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

Hi ther i thought to take advice here before taking any decision on this issues. is that i have to raise the PMR on this issue with IBM???

thanks in advance
Back to top
View user's profile Send private message
kirani
PostPosted: Sun Nov 08, 2009 10:24 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Can you please provide platform details for your Broker server and the server where the Webservice is hosted? If these two platforms are different then you might have to set appropriate CCSID in your Properties folder before you call the webservice.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
WMBSAM
PostPosted: Mon Nov 09, 2009 9:45 am    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

do you mean to say that if the platforms are different then i have to explicitly set the charsetencoding to the CCSID of the ISO-8859-1?

platform of the broker is windows(onmy laptop its not connected to ther actual server) platform wherre the webservice is hosted is AIX
Back to top
View user's profile Send private message
WMBSAM
PostPosted: Mon Nov 09, 2009 9:48 am    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

but i really think that there is no issue with the request i am sending because through tcp ip monitor i can see that the request is being sent and also i can see that i recieve the response too but something is wrong with the soap request node which creates the above error and also i can clearly see the response is in iso-8859-1 format (in tcp-ipmonitor i can see) my question is that something has to be done at SOAP request node so that it can parse the Response message????
Back to top
View user's profile Send private message
WMBSAM
PostPosted: Mon Nov 09, 2009 10:02 am    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

and also thought to make a point that i am able to also receive the response thru SOAP UI but thru Soap request node in message broker does that mean soap request node doesnot supporrt the above format???

(Sorry for so many question)
Back to top
View user's profile Send private message
kirani
PostPosted: Tue Nov 10, 2009 3:51 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

I encountered similar problem before and it was resolved after I changed the CCSID of the message before it's sent to the HTTPRequest node. In our case the input message came from the Mainframe and we were calling a Windows webservice from Windows broker. I hope this helps.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
WMBSAM
PostPosted: Wed Nov 11, 2009 10:17 am    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

Hello kirani if you don't mind can you detail the process i mean the what was the CCSID you were using for the message which is coming from the mainframe and the CCSID you have set for the response message which receive from the webservice you aare calling?? DID you mention the CCSID in the properties folder of the message or the MQMD header??

becoz i am using the SOAP request node and i have set the CCSID to the ISO-8859 i.e 819 which is the format of the response message i am receiving but it gives me the same error as above do we have to also set the encoding field in the properties folder of the message which we are sending to the webservice???if so what value it could be??
Back to top
View user's profile Send private message
kirani
PostPosted: Wed Nov 11, 2009 4:38 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

The CCSID on my input message from the Mainframe was 500. I changed the CCSID to 437 (Windows) in my compute node when I prepare SOAP request message.

Can you please capture your request message using a Trace node and post the contents here.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
WMBSAM
PostPosted: Thu Nov 12, 2009 1:35 am    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

Hello Kirani here is the traced request messaage before sending it to the SOAP REQUEST NODE:

Quote:

( ['MQROOT' : 0xb845900]
(0x01000000:Name ):Properties = ( ['MQPROPERTYPARSER' : 0x3db89f8]
(0x03000000:NameValue):MessageSet = 'dsfhkdshMessageSet' (CHARACTER)
(0x03000000:NameValue):MessageType = '' (CHARACTER)
(0x03000000:NameValue):MessageFormat = '' (CHARACTER)
(0x03000000:NameValue):Encoding = 273 (INTEGER)
(0x03000000:NameValue):CodedCharSetId = 819 (INTEGER)
(0x03000000:NameValue):Transactional = FALSE (BOOLEAN)
(0x03000000:NameValue):Persistence = FALSE (BOOLEAN)
(0x03000000:NameValue):CreationTime = GMTTIMESTAMP '2009-11-12 09:03:01.740' (GMTTIMESTAMP)
(0x03000000:NameValue):ExpirationTime = -1 (INTEGER)
(0x03000000:NameValue):Priority = 0 (INTEGER)
(0x03000000:NameValue):ReplyIdentifier = X'000000000000000000000000000000000000000000000000' (BLOB)
(0x03000000:NameValue):ReplyProtocol = 'MQ' (CHARACTER)
(0x03000000:NameValue):Topic = NULL
(0x03000000:NameValue):ContentType = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourceType = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourceToken = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourcePassword = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourceIssuedBy = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedType = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedToken = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedPassword = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedIssuedBy = '' (CHARACTER)
)
(0x01000000:Folder):XMLNSC = ( ['xmlnsc' : 0xb845060]
(0x01000000:Folder)http://schemas.xmlsoap.org/soap/envelope/:Envelope = (
(0x03000102:NamespaceDecl)http://www.w3.org/2000/xmlns/:soapenv = 'http://schemas.xmlsoap.org/soap/envelope/' (CHARACTER)
(0x03000102:NamespaceDecl)http://www.w3.org/2000/xmlns/:xsd = 'http://www.w3.org/2001/XMLSchema' (CHARACTER)
(0x03000102:NamespaceDecl)http://www.w3.org/2000/xmlns/:xsi = 'http://www.w3.org/2001/XMLSchema-instance' (CHARACTER)
(0x01000000:Folder )http://schemas.xmlsoap.org/soap/envelope/:Body = (
(0x01000000:Folder)http://com/dsjfhkjd/abcds:queryRequest = (
(0x03000102:NamespaceDecl):xmlns = 'http://com/dsjfhkjd/abcds' (CHARACTER)
(0x03000000:PCDataField )http://com/dsjfhkjd/abcds:query = '1113858' (CHARACTER)
(0x03000000:PCDataField )http://com/dsjfhkjd/abcds:user = 'USER01' (CHARACTER)
)
)
)
)
)
and i am getting the folllowing error :

Text:CHARACTER:Frame : 0 org.apache.axis2.AxisFault: Character Set Encoding from transport information [UTF-8] does not match with character set encoding in the received SOAP message [iso-8859-1]



but i can clearly see the response in the TCPIP monitor:

Here is the response i receive:

Quote:

<?xml version="1.0" encoding="iso-8859-1"?>
<soap:Envelope xmlns:m="http://com/dsjfhkjd/abcds" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<m:queryResponse>
<m:tran>
<m:seqid>200058</m:seqid>
</m:tran>
</m:queryResponse>
</soap:Body>
</soap:Envelope>


and here is the request message i see thru tcpipmonitor:
Quote:

<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<queryRequest xmlns="http://com/dsjfhkjd/abcds">
<query>1113858</queryid>
<userid>USER01</userid>
</queryRequest>
</soapenv:Body>
</soapenv:Envelope>


is there any way wee can set the CCSID for the response message ??
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Sat Nov 14, 2009 4:49 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20697
Location: LI,NY

Set OutputRoot.properties.CodedCharSetId
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
WMBSAM
PostPosted: Mon Nov 16, 2009 12:56 pm    Post subject: Reply with quote

Voyager

Joined: 02 Oct 2009
Posts: 90
Location: Atlanta

Quote:
Set OutputRoot.properties.CodedCharSetId


NO result the issue still exists.

i am surprised to ask the question does broker support ISO-8859-1?

becoz i have explicitly set the CCSID to ISO-8859-1 then too the issue still persists as i have mentioned before i can see the response in the TCP-iP monitor with encoding:
<?xml version="1.0" encoding="iso-8859-1"?>

but wen it reaches the soap request node i get the error above mentioned error.
Back to top
View user's profile Send private message
kirani
PostPosted: Mon Nov 16, 2009 8:28 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Hi WMBSAM,

I have not used the SOAP nodes yet, so I am not sure why this is not working for you. In our scenario, we were using HTTP Nodes.
You might want to open a PMR with IBM for this problem.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
fjb_saper
PostPosted: Mon Nov 16, 2009 8:56 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20697
Location: LI,NY

WMBSAM wrote:

i am surprised to ask the question does broker support ISO-8859-1?

Yes this should be
Code:
Set OutputRoot.Properties.CodedCharSetId=819;

That you see the corresponding value in XML Encoding may be because you specifically set the XML property in your message tree.

This does not set the content. To set the content you must set the OutputRoot.Properties.CodedCharSetId to the relevant value.

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » character set encoding issue
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.