cancel
Showing results for 
Search instead for 
Did you mean: 

JMS adapter :MQ series : sun.io.MalformedInputException

former_member192079
Participant
0 Kudos

Hi

we are using SAP XI to read file from

MQ Queues.we are getting error in our sender communication channel :

Error converting Message : sun.io.MalformedInputException

failed to get message from MQ queue Code : MQJMS2002.

till now steps taken :-

- content coversion parameters heve been cross checked.

- we have checked the data format utf-8 or 16.

- cache refreshin XI

- checked the source file format from the respective team.

- tested other interface JMS channel, with no issues in JMS driver.

- checked the MQ error code list for code MQJMS2002 type

we have gone some similar threads avaliable in sdn with respective answers... but issue still un resolved...

[]

i had used these following parameters in Module Configuration

Transform.Class

TransformContentType

xml.conversionType

xml.documentName

xml.documentNamespace

xml.fieldNames

xml.fieldSeparator

xml.processFieldNames

xml.structureTitle

xml.endSeparator

and Module Key : PlainToXML

Regards,

Ashutosh R

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Ashutosh

The problem is with your inputfile format.

The "sun.io.MalformedInputException" is IO exception and it is thrown only when input format varies. Some SDK |tools might throw a sun.io.MalformedInputException.

To check your system:

If your system locale is using a UTF-8 encoding, some SDK |tools might throw a sun.io.MalformedInputException. To find out whether your |system is using a UTF-8 encoding, examine the locale-specific environment |variables such as LANG or LC_ALL to |see if they end with the suffix ".UTF-8". If you get this sun.io.MalformedInputException, |change characters that are not within the 7-bit ASCII range (0x00 - 0x7f) |and are not represented as Java Unicode character literals to Java Unicode |character literals (for example: '\u0080'). You can also work around this |problem by removing the ".UTF-8" suffix from the locale-specific environment |variables; for example, if your machine has default locale of "en_US.UTF-8", |set LANG

to "en_US". |

2) The second solution is to compile with encoding, ie.

javac -encoding ISO-8859-1 ...

In ant, this can be done with the tag

Regards

Abhishek Mahajan

**Please reward points if helpful***

former_member192079
Participant
0 Kudos

Thx

"To check your system:

If your system locale is using a UTF-8 encoding"

this has to checked in MQ Queue System , or in XI System...

already we have a confirmed with the MQ Queue team, about the input file format...

Regards

Ashutosh R

Former Member
0 Kudos

Chek with your MQ Queue team about the format.

Former Member
0 Kudos

A change is needed on program/script that puts the message onto the queue. It has to specify MQMD header as MQSTR while doing the message put and that should resolve the issue. If no MQMD header is specified, XI treats it as binary data and try to read it as UTF-8, in your case, I think it is not UTF-8.

You may need to set an appropriate CCSID in the sender comm channel(based on the actual encoding of the data) if there is any special characters in the file.

former_member192079
Participant
0 Kudos

Thx Chidambaram

I am working on the point which , you have given, but one thing

we discovered that some time the file from MQ queue is readed

sucessfully,but later it is failing with the same error......

and this is random...

we are putting the same file both readed/failed ....

we activated the OS level traces and found out the error details...

#1.5#00145E9C5A91028D00000000000CC0D200044B85AFFE21CB#1208937462243#com.sap.aii.af.service.jms.WorkerImpl##com.sap.aii.af.service.jms.WorkerImpl.onException(JMSException jmsException)#J2EE_GUEST#0####f36e7330110a11dd8eb600145e9c5a91#Thread[Thread-585,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Path##Java###Entering method with ()#1#javax.jms.JMSException: MQJMS2002: failed to get message from MQ queue# #1.5#00145E9C5A91028D00000001000CC0D200044B85AFFE2261#1208937462243#com.sap.aii.af.service.jms.WorkerImpl##com.sap.aii.af.service.jms.WorkerImpl.onException(JMSException jmsException)#J2EE_GUEST#0####f36e7330110a11dd8eb600145e9c5a91#Thread[Thread-585,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Debug#1#/Applications/ExchangeInfrastructure/AdapterFramework/Services/JMS_ROOT#Plain###onException() was called in this worker instance: com.sap.aii.af.service.jms.WorkerJMSReceiver@735cdff5# #1.5#00145E9C5A91028D00000002000CC0D200044B85AFFE22C9#1208937462244#com.sap.aii.af.service.jms.WorkerImpl##com.sap.aii.af.service.jms.WorkerImpl.onException(JMSException jmsException)#J2EE_GUEST#0####f36e7330110a11dd8eb600145e9c5a91#Thread[Thread-585,5,SAPEngine_Application_Thread[impl:3]_Group* ##0#0#Warning#1#/Applications/ExchangeInfrastructure/AdapterFramework/Services/JMS_ROOT#Java###JMS Connection Error (Provider ErrorCode: )#1#MQJMS2002 #1.5#00145E9C5A91028D00000004000CC0D200044B85AFFE2395#1208937462244#com.sap.aii.af.service.jms.WorkerImpl##com.sap.aii.af.service.jms.WorkerImpl.onException(JMSException jmsException)#J2EE_GUEST#0####f36e7330110a11dd8eb600145e9c5a91#Thread[Thread-585,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Debug#1#/Applications/ExchangeInfrastructure/AdapterFramework/Services/JMS_ROOT#Java###Reconnect delay is set to milliseconds (-1 = switched off)#1#1000#

Any clue from the trace..

Regards,

Ashutosh

Edited by: ashutosh rawat on Apr 25, 2008 8:19 AM

Former Member
0 Kudos

Has this been resolved ?

former_member192079
Participant
0 Kudos

Hi

i checked with the MQ support team, regarding u r points..

but they did'nt found any thing wrong....

and th OS trace : Applications/ExchangeInfrastructure/AdapterFramework/Services/JMS_ROOT#Java###JMS Connection Error (Provider ErrorCode: )#1#MQJMS2002

only says this...

any other clue..

if possible could u please provide u r contact no on my id

so that i can clarify u the problem, and set of activities performed by us...

Regards

ashutosh r