Skip to Content
avatar image
Former Member

MessageTransformBean: problems with a special char as field seperator

I have a File to Proxy scenario where I have to import a csv file. Therefore I used a file adapter with content conversion till now. Because of security regulations I have to switch over to the SAP SFTP adapter. As you know this adapter has no content conversion opportunity by default. So I have to use the MessageTransformBean.

And here is my problem: The used field separator in the import file is the sign þ   (Thorn)

With the standard file adapter it was possible to enter this sign in the xxx.fieldSeparator property directly. I tried the same with the xml.fieldSeparator property of the MessageTransformBean but it doesn't work.

If I change the field separator in the file to ; and set this value in the adapter configuration too, all works fine. But this is no opportunity for me because I have no influence on the delivered files in my prod landscape.

Not sure if this is important but my file is in ISO-8859-1.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

5 Answers

  • Best Answer
    avatar image
    Former Member
    Dec 05, 2013 at 08:56 AM

    Okay, this was a (now) confirmed bug of the MessageTransformBean and it ist fixed now. See note 1936206!

    Add comment
    10|10000 characters needed characters exceeded

  • Aug 21, 2013 at 07:27 AM

    Hi,

    Instead of this symbol try with Hexadecimal value.

    Regards,

    Manigandan

    Add comment
    10|10000 characters needed characters exceeded

  • Aug 21, 2013 at 07:44 AM

    Hi Gil,

    Manigandan Ramasamy is right, you can do this by using the hex values. Put the following in your config:

    xxx.fieldSeparator = '0xDE'

    if your need capital "thorn" as a separator, or '0xFE' if you need lower case.

    Regards,

    Greg

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Aug 21, 2013 at 09:29 AM

    Okay, I've tried this now and entered '0xFE' but now I get the following errors in the communication channel monitoring.

    Cannot send message to module processor: com.sap.aii.af.lib.mp.module.ModuleException: Transform: failed to set up the transformer for channel cbaa8a956136311e861f690fb6657d2d; modkey Plain2XML; caused by com.sap.aii.af.sdk.xi.adapter.trans.TransformException: Transformer Conversion3.0.5226 Error initializing Class: java.lang.Exception: java.lang.NumberFormatException: Value out of range. Value:"FE" Radix:16; nested exception caused by: java.lang.Exception: java.lang.NumberFormatException: Value out of range. Value:"FE" Radix:16

    Error while sending message: Cannot send message to module processor com.sap.aii.af.lib.mp.module.ModuleException: Transform: failed to set up the transformer for channel cbaa8a956136311e861f690fb6657d2d; modkey Plain2XML; caused by com.sap.aii.af.sdk.xi.adapter.trans.TransformException: Transformer Conversion3.0.5226 Error initializing Class: java.lang.Exception: java.lang.NumberFormatException: Value out of range. Value:"FE" Radix:16; nested exception caused by: java.lang.Exception: java.lang.NumberFormatException: Value out of range. Value:"FE" Radix:16 

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Aug 21, 2013 at 09:43 AM

    Additional information:

    I've just tried the same with the ; . I used the notation '0x3B' for this and I got no error. It doesn't help because ; isn't my field separator but perhaps that indicates that there is a bug in the adapter coding respectively the MessageTransformBean.

    Add comment
    10|10000 characters needed characters exceeded