Content conversion (JMS)

Hi all,
I am using the Content Conversion Module for JMS in order transfer a XML to a FLAT structure.
I am getting this error:
Parameter xml.fieldFixedLengths or xml.fieldSeparator is missing (4409)
xml.fieldFixedLengths is configured under the adapter module-tab, but I havent set up the lenghts for the client and the csysidn fields, since thay are part of the complex type. Is that wrong? 
This is my structure:
<nr1:ErrorHandling_MT
<client>xxx</client>
<csysidn>xxx</csysidn>
<error>
<eseq_number>xxx</eseq_number>
<error_text>xxxx</error_text>
<original_message>xxx</original_message>
</error>
</nr1:ErrorHandling_MT>
Could I do a simple conversion with this structure at all?
thanks
Thomas

Go through this.
How to use conversion modules (FCC) in JMS - https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
Or you can take a help from below mentioned example.
XML2Plain        Transform.Class----
com.sap.aii.messaging.adapter.Conversion
XML2Plain        Transform.ContentType----
text/plain;charset=utf-8
XML2Plain        xml.client.endSeparator----
'nl'
XML2Plain        xml.client.fieldFixedLengths-------give the length here
XML2Plain        xml.error.endSeparator----
'nl'
XML2Plain        xml.error.fieldFixedLengths----
give the length here
XML2Plain        xml.addHeaderLine----
0
XML2Plain        xml.conversionType----
StructXML2Plain
XML2Plain        xml.recordsetStructure----
client,error

Similar Messages

  • Content conversion JMS adapter

    Hi
         I have a flat file which is read by JMS adapter. I am using content conversion in the JMS adapter.
    There are 10 fields in the flat file,i want to read only 3rd and 5th fields.Is this possible?Can i specify the start end position of a flat file field in the content conversion.
    looking forward to your ideas.......
    Thanks
    kumar

    OH.  Well that makes a difference then. 
    Are the records fixed-width, or delimited?  If they are fixed width, just set the last attribute as "filler" and give it the combined length of all the fields that are after the nth one you want.  If it's delmited... Let me test out what happens if there are more fields in the data than are set up... I think it might throw them away, but I have to check. 
    amy

  • Content Conversion in JMS Adapter

    Hi All,
    I am having a scenario JMS - XI - JDBC.
    Now I have to do the content conversion in the incming records.
    The sample incoming data is as follows:-
    <Field1>,<Field2>, ...,<Fieldn>        -->Row1
    {<Field1A>,<Field2A>, ...,<FieldnA>}   -->Row2
    {<Field1A>,<Field2A>, ...,<FieldnA>}   -->Row3
    <Field1B>,<Field2B>, ...,<FieldnB>     -->Row4
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row5
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row6
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row7
    Now at the target, we have 3 oracle tables, in which the data from the Row1 &4 will go to Table 1, Row2&3 --> Table2 and Row5,6 &7 --> Table3.
    The source data type that i m using is of the structure:-
    <TC>
      <GT>
        <Field1>
        <GS>
          <Field1A>
        </GS>
        <Field1B>
        <Field2B>
        <GDS>
          <Field1C>
        </GDS>
      </GT>
    </TC>
    Please help me out in the modules configuraton, how this can be handled.
    Thanks in advance, hope to receive some solution at the earliest.
    Rocky.

    Hi Rocky,
    Please have a look at these threads..
    JMS Adapter: Content Conversion
    JMS Adapter Content Conversion
    JMS Content Converrsion
    Hope these help you!
    cheers,
    Prashanth

  • Content conversion in XI using JMS Sender Adapter.

    Hi,
    I have scenario where i will get fixed length flat file from MQ and i need to create an IDOC.
    The flat file structure is like below.
    HEADER001002003 (Occurs once)
    DELIVERY0000111112222  (Min - 1 and Max - Unbounded)
          Detail33333344444455555  (Min - 1 and Max - Unbounded)
    NOTE -- Detail record is sub level record of DELIVERY.
    I would like to do content conversion in JMS SENDER ADAPTER.
    Did anybody worked on similar scenario?
    I would appreciate ,if anybody provides info on how to do it.
    Regds,
    Jagdish.

    Hi
    Please have a look at these threads..u get an idea abt the content conversion.
    JMS Adapter: Content Conversion
    https://forumsn.sdn.sap.com/click.jspa?searchID=2171243&messageID=3319704
    JMS Adapter Content Conversion
    JMS Content Converrsion
    Hope these help you!

  • Ignore record in JMS sender content conversion

    Hi,
    I am using JMS sender adapter with content conversion.
    In the input text file, I have to ignore the first record.
    for this, in Module tab I have given parameter like this:
    Plain2XML -> documentOffset -> 1
    so that it will not read the first record in the text file.
    But it is not working
    Please suggest the right way.
    Regards,
    Anil.

    It should be:
    xml.documentSkipFirstRows
    Regards
    Stefan

  • Content conversion in Sender JMS adapter-document

    Hi,
    I am tring to read fixed length flat file from MQ-series Queue using JMS adapter.
    I want to use content converstion to convert the flat file to XML.
    I am not able to open the PDF link provided in SDN.
    if anyone has a copy of the pdf document on JMS content conversion, could you please enmil it to me
    at [email protected]
    Edited by: ashok sri on May 27, 2008 5:25 PM

    please go through the  document
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/50061bd9-e56e-2910-3495-c5faa652b710

  • Content conversion in Sender JMS Adapter

    Hi,
    Scenario is file to IDoc
    My source file is   ' ; ' separated file coming from MQ via JMS adapter. now  I need to convert this to XI.
    Source DT looks like
    Root
    HEADER  (Occurance 1)
         Field 1
         ISOCURCD
         TRANKODE
         IDENTIFIER
         DATO
         TIME
    DETAIL(Occurance 1 to unbounded)
         ISOCURCD
         TRANKODE
         EFFDATE
         COMMDATE
         DKKVAL1
         USDVAL1
    TRAILER(Occurance 1)
         ISOCURCD
         TRANKODE
          TRANCOUNT
    According to How to use content conversion in JMS guide from SDN i have configured the content conversion parameters in the module of JMS sender adapter.
    In the processing sequence  given the module name as localejbs/AF_Modules/MessageTransformBean and module Key as Plain2XML.
    And in module configuration
    Parameter Name                      Parameter Value
    Transform.Class                          com.sap.aii.messaging.adapter.Conversion
    Transform.ContentType                     text/xml;charset=utf-8
    xml.keyFieldName                          TRANKODE
    xml.keyFieldType                          CaseSensitiveString
    xml.recordsetName                          Root
    xml.documentName                                   MT_ROOT
    xml.documentNamespace                          http://XXX.XXX.XX/xi/XXXXX
    xml.processFieldNames          fromConfiguration
    xml.conversionType                                   StructPlain2XML
    xml.recordsetStructure          HEADER,1,DETAIL,*,TRAILER,1
    xml.HEADER.fieldNames           Field1,ISOCURCD,TRANKODE,IDENTIFIER,DATO,TIME
    xml.HEADER.fieldSeparator                     ";"
    xml.HEADER.keyFieldValue                     H
    xml.fieldSeparator                                      ";"(if i don't use this then the file is not being picked and getting an error in the CC monitoring of RWB saying xml.field separator missing.)
    Similarily for Detail and Trailer records as well.
    But when I run the scenario, the file is being picked up but I am not getting any payload into the inbound message.
    Can you please help me where I have configured wrongly. And one more thing will this configuration help for ; separated file .
    Thanks & Regards,
    Kumar
    Edited by: Kumar on Dec 19, 2007 11:11 AM
    Edited by: Kumar on Dec 19, 2007 11:15 AM

    HI,
    Have you gone through the below pdf i think it will help to find ur mistake.
    How to use conversion modules in JMS - https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    Thnx
    Chiarg

  • JMS sender communication channel content conversion

    Hi,
    I struck with the content conversion in the JMS Sender communication channel.
    I have configured the communication channel with the filed fixed lengths. (Simple type)
    The field fixed lengths i have given are 10,2,3,11
    The contents in the file 1000000072  230 111
    but, in the input xml after conversion iam getting 100000007 in the first field and 2 in the second field 23 in the third field.
    I have configured the sender communication channel as in the document in SDN.
    Even, i configured several communication channels. I didn't get this strange error any time.
    I have gone through SDN to fix this issue, but i didn't get solution.
    If anyone got rectified this kind of error, please answer your solution to me
    Thanking you,
    Regards,
    Krishnaraju.

    Hi,
    Thanks for all your support. The issue got resolved.
    The issue is due to the file, In the file the special characters are appearing. We are not able to see these characters in the notepad, wordpad, text editor.
    But, these characters are appearing in th syn text editor. So, we removed those characters and processessed the file. Now, it is successfull.
    Regards,
    Krishnaraju.

  • JMS Adapter module content conversion

    Hi,
    I'm developing a module for the jms adapter(sender). My requirement is to parse the XI message(text) using some XML parsing api and do some formatting, logic etc and to make the jms adapter create a xml file with the processed information. Jms File Content Conversion does not suit our requirement and thats the reason we are trying this option.
    My understanding is: Access the  payload in the "process" method of the local ejb, apply XML parsing using JDOM etc, make a xml which should be the output of the jms adapter. This xml will be the xml with my user defined tag elements after content conversion. Can i form this xml and assign to the inputModuleData? Will the jms adapter use this string to create the xml and send to IS? Are there any other parameters to be set or processes to be done?
    Also in which sequence should I put my adapter module in communication channel.
    ================================================
    My code snippet:
    public ModuleData process(ModuleContext moduleContext, ModuleData inputModuleData)
            throws ModuleException
              Object obj = null; // Handler to get Principle data
              Message msg = null; // Handler to get Message object
            try
                   obj = inputModuleData.getPrincipalData();
                   msg = (Message)obj;
                   AuditMessageKey amk = new AuditMessageKey(msg.getMessageId(),AuditDirection.INBOUND);
                   Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---efore reading payload");
                   try
                        XMLPayload xmlpayload = msg.getDocument();
                        String messageStr = xmlpayload.getText();
                        String inputStr = null;
                        String tags[] = new String[2];
                        String values[] = new String[2];
                        Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---before content conversion");
    String tagvalue1 = messageStr.substring(messageStr.indexOf("BEGIN+"), messageStr.indexOf("'");
    String tagvalue2 = messageStr.substring(messageStr.indexOf("'"), messageStr.lastindexOf("ENDING");
                             tags[0] = "tag1";
                             tags[1] = "tag2";
                             values[0] = tagvalue1 ;
                             values[1] = tagvalue2 ;
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---after content conversion");
                             Document xmldoc = null;
                             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
                             DocumentBuilder builder = factory.newDocumentBuilder();
                             DOMImplementation impl = builder.getDOMImplementation();
                             org.w3c.dom.Element e = null;
                             Node n = null;
                             xmldoc = impl.createDocument(null, "MT940", null);
                             org.w3c.dom.Element root = xmldoc.getDocumentElement();
                             for(int i = 0; i < tags.length; i++)
                                  e = xmldoc.createElementNS(null, tags<i>);
                                  n = xmldoc.createTextNode(values<i>);
                                  e.appendChild(n);
                                  root.appendChild(e);
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---before dom creation");
                             DOMSource domSource = new DOMSource(xmldoc);
                             ByteArrayOutputStream myBytes = new ByteArrayOutputStream();
                             Result dest = new StreamResult(myBytes);                         
                             TransformerFactory tf = TransformerFactory.newInstance();
                             Transformer serializer = tf.newTransformer();
                             serializer.setOutputProperty("indent", "yes");
                             serializer.transform(domSource, dest);
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---before setting principal data");
                             byte[] docContent = myBytes.toByteArray();
                             if (docContent != null) {
                             xmlpayload.setContent(docContent);
                             inputModuleData.setPrincipalData(msg);
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---after setting principal data");
                   catch(ArrayIndexOutOfBoundsException e)
                        e.printStackTrace();
                   catch(StringIndexOutOfBoundsException e)
                        e.printStackTrace();
                   catch(TransformerException e)
                        e.printStackTrace();
                   catch(Exception e)
                        e.printStackTrace();
            catch(Exception e)
                ModuleException me = new ModuleException(e);
                throw me;
            return inputModuleData;

    This is for sender channel. The doubt in adapter module is in the process block how will I get the main data being read by the jms adapter from the text file.As I am reading text file from websphere MQ, the content of the text file can be obtained thru xmlpayload.getText() or is there any other way.
    obj = inputModuleData.getPrincipalData();
    msg = (Message)obj;
    XMLPayload xmlpayload = msg.getDocument();
    String messageStr = xmlpayload.getText();
    At present I am using my adapter module before call sap adapter, but before sap adapter there are two other modules(toBinary and to Xmb), so shld I place it before both or after both the modules.
    Thanx in advance
    Rachit

  • Content conversion by using sender JMS channel

    Hi All,
    I have developed a scenario from JMS to Idoc. I need to read flat files by using sender jms adapter. I have configured message transform bean in module tab and respective content conversion parameters as well. My flat files contains different structures. So I need to use conversion type as StructPlain2XML. Based on keyField value I am diffentiating flat file records. My requirement is I have to give two spaces in <xml.keyFieldValue> parameter. fixed Length of keyFieldValue is 6, Actual value getting from source file is DEST. I need to pass two spaces as per fixed length specification. I have passed two spaces, but after activating spaces are removed by system bydefault. Because of this an empty file is processed by PI. Source file contains two spaces after DEST. I need to read two spaces along with DEST value as keyFieldValue. How to achieve this..
    Thanks in advance.
    Best Regards,
    Ashok.

    Hi Ashok
    You can resolve this by splitting the field into two fields - and actual key field and a dummy/temp field.
    I've just blogged about this technique, you can refer to it here
    Content Conversion for fixed length files with key field value shorter than key field length
    Rgds
    Eng Swee

  • JMS like content conversion in Seeburger

    Hi,
    Can you have JMS like content conversion in Seeburger?
    In Seeburger adapter if username/password is used, instead of public private keys, can you use JMS like content conversion in Seeburger. (the one which you specify as module parameters)
    Regards,
    Anirudh.

    Depending on what solutions you have: you may use seeburger bic module to convert from csv to xml or other formats. best thing usually is to follow the 2 step mapping strategy of seeburger where bic is doing a non-xml<->xml conversion and the target (XML-) format is mapped to in the SAP Message Mapping.

  • Content Conversion module in JMS Adapter - MessageTransformBean

    Hi All,
    We are using Content Conversion module using MessageTransformBean in JMS adapter to read a flat file from MQ Queue.It works fine and the file is getting picked and successfully converted into a xml structure in XI.
    The flat file is multiple line file with each line as one xml record.But the xml structure after conversion has only one record in it.So we end up getting multiple messages each with one record instead of ONE xml structure with multiple records in it.
    Could I know why I am not getting multiple records in one xml structure as expected.
    Do I need to change  xml.structureTitle as  MyTitle,* or should I put something endSeparator like we do in File Content Conversion.
    Any Help appreciated.
    Thanks,
    V
    Edited by: CollinsV on Aug 9, 2010 6:28 AM
    Edited by: CollinsV on Aug 9, 2010 6:36 AM
    Edited by: CollinsV on Aug 9, 2010 6:38 AM
    Edited by: CollinsV on Aug 9, 2010 6:39 AM
    Edited by: CollinsV on Aug 9, 2010 6:56 AM

    Thanks Shabarish .I did follow the same document , but the xml is not converted as multiple records in it .we are getting only one xml message for each record in the file .
    The xml structure we are getting :
    <ns:MyDocument xmlns:ns="http://xi.com/test">
    <MyTitle>
    <field-name1>111</field-name1>
    <field-name2>222</field-name2>
    <field-name3>333</field-name3>
    </MyTitle>
    </ns:MyDocument>
    We need onle one xml message instead as below.
    <ns:MyDocument xmlns:ns="http://xi.com/test">
    <MyTitle>
    <field-name1>AAA</field-name1>
    <field-name2>BBB</field-name2>
    <field-name3>CCC</field-name3>
    </MyTitle>
    <MyTitle>
    <field-name1>111</field-name1>
    <field-name2>222</field-name2>
    <field-name3>333</field-name3>
    </MyTitle>
    </ns:MyDocument>
    Any Help ...
    Thanks
    V

  • Content Conversion - JDBC and JMS

    Can we use File Content Conversion with JDBC and JMS ?

    Hi,
    How To Use the Content Conversion Module in JMS Adapter - https://websmp106.sap-ag.de/~form/sapnet?_SHORTKEY=01100035870000582377&
    check this for JMS content conversion:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    Check the how to guide provided by prabhu and also this link on the XMl To TeXtCoversion Module,
    http://help.sap.com/saphelp_nw04/helpdata/en/44/748d595dab6fb5e10000000a155369/content.htm
    Ref How To Use the Content Conversion Module in JMS Adapter -
    https://websmp106.sap-ag.de/~form/sapnet?_SHORTKEY=01100035870000582377&
    See this weblogs which was shown with examples:
    How to use SAP's WebAS J2EE's JMS Queue in Exchange Infrastructure
    Sync/Async communication in JMS adapter without BPM (SP19)
    Async/Sync Communication using JMS adapter without BPM (SP 19)
    Exploring JMS and SAP-XI JMS Adaper
    Configuring the sender JMS adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f4/2d6189f0e27a4894ad517961762db7/content.htm
    Configuring the receiver JMS adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/10/b1b4c8575a6e47954ad63438d303e4/content.htm
    Check JMS Adapter section of this blog by Sravya:
    Aspirant to learn SAP XI...You won the Jackpot if you read this!-Part III
    Also information related to Provider-specific settings are available
    http://help.sap.com/saphelp_nw2004s/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/frameset.htm
    Plz do refer the following threads:
    JMS Content Conversion - no CR/LF
    Message (Data) getting lost after JMS Content Conversion(Sender)
    Message (Data) getting lost after JMS Content Conversion(Sender)
    Message (Data) getting lost after JMS Content Conversion(Sender)
    Regards,
    Vinod.

  • Complex XML to Plain in JMS adapter "Content conversion module"

    Hi!
    I have read the document on "How To… use the content conversion module with XI3.0 J2EE JMS Adapter", and it says only SimpleXML can be converted in the receiver channel.
    I had hoped for a solution at least as good as in the File/ftp adapter, where complex XML can be transformed to files.
    Are there plans to include complex XML conversion in the JMS adapter?
    I can not use the file adapter as I need to change the file name and destination, and that can not be done by adding own module to its single module.
    Any idea how I can achieve what I want?
    To only way I can find, is to create a file using the file/ftp adapter, and then pick it up again and treat all the lines as the same structure (one row = one xml field). Then output this new xml message to file, using the JMS adapter and add any modules with name and destination determination.
    Appreciate any help!
    Regards,
    Oeystein Emhjellen

    Hello,
    Have you tried to use an XSLT mapping within the IE?
    I have, at one customer site, created a XSLT message mapping which converts the  XML to a fixed length ASCII file format. I than added the XSLT message mapping as a second mapping step on the interface mapping.
    In this case I was able to publish a fairly complex fixed length file format to MQ Series via the JMS adapter.
    /Johan

  • Sender JMS Content Conversion - How to process multiple records

    Hi All,
    I use a Sender JMS Channel with Content Conversion.
    My message structure is like this
    <root>
        <rec>    </rec>
        <rec>    </rec>
    </root>
    I have fixed length flat file with multiple records.
    i have given the parameters FixedFieldLength, FieldNames and StructureTitle.
    Which parameter i need to use specify the RecordDelimiter
    Because my input file will have more than record
    my input file -
    xxxx
    yyyy
    if i dont specify any delimiter value, in the module parameter,then for each newline of the file, a new mesage is created.
    <root>
      <rec>xxxx</rec>
    <root>
    <root>
      <rec>yyyy</rec>
    <root>
    But i want the output to be like this
    <root>
    <rec>xxxx<rec>
    <rec>yyyy</rec>
    </root>

    hi,
    You can do your FCC for sender JMS by going through page 5 of this document.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/50061bd9-e56e-2910-3495-c5faa652b710

Maybe you are looking for

  • TS3274 How do I move icons from one screen to another?

    How do I move icons from one screen to another. 

  • How do I un-eject the "HD" for my XP bootcamp partition

    I have spent quite a bit of time trying to find the answer to this, but no luck. I accidentally ejected my XP partition (I have two partitions set-up on my MacBook - one for OS X and one for XP, set-up under Bootcamp) while in finder. Finder no longe

  • Why it automatically deduc 1.98$ from my debit card?

    I didn't buy anything, why it automatically deduc 1.98$ from my debit card? Please kindly check ASAP It's not much money, but I quite not happy about that detail: Order ID: MH6T3WJ71L   Receipt Date: 02/08/13 Order Total: $1.98 Billed To: Visa .... 2

  • WiFi Network Name with Underscore Special Characters Issue

    Turns out that iPod Touch doesn't like wireless network names with special characters (e.g. underscores) in them (I had 2 underscores in mine). It will establish a connection, get an IP address, even use WEP but won't talk to the Internet if the wire

  • How to test xsl

    I have a xml file and a xsl file. I want to test running the xml file thru the xsl to see what the end result will be. does anyone know how to do this in jdeveloper? i have both 11g and 10g jdeveloper