Send Idoc flat file message in JMS receiver adapter

Hello,
I am working on a scenario where we send Delvry 03 idoc from ECC to external system. To external system, we send the whole Idoc in flat file structure through JMS queue. I have used Idoc to flat file program in my interface mapping and have configured JMS receiver adapter with just default Module configs but, I am getting an error in communication channel monitoring for the messages.
Please note that Idoc xml to flat file structure conversion is already done in the mapping, I need to just pass this idoc flat structure in the jms adapter. Hence ther eis no content conversion i nthe adapter..
Please give some inputs..Here are the modules in my receiver adapter and nothing else..
SAP XI JMS Adapter/ConvertMessageToBinary
SAP XI JMS Adapter/SendBinarytoXIJMSService
The error I get is in audit log
Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: No transition found from state: ERROR, on event: process_commence for DFA: CC_JMS_R:ca336a6689f837da8bd3387140fc4447
in turn the message has this error if I open the message
Whitespace is not allowed at this location. Error processing resource 'http://host:port/mdt/messageconten...
and it shows one of the lines from idoc..flat file
Any idea is greatly appreciated..Thank you..Thanujja

The difference in what I suggest is that it is way simpler.
Maybe you did not understand this, so will try to explain it better. Its not the best thing to do, but if JMS adapter doesn't budge then you can give it a shot.
1. You continue to use the ABAP mapping in your interface mapping to map the Idoc xml to Idoc flat.
2. Write a Java Map that will take the output of the ABAP mapping ; and then create a XML output which would be something like,
<Root>
<Idoc_Flat>
<Data>ABAP Mapping Output<Data>
</Idoc_Flat>
</Root>
3. Now use the simple content conversion in the JMS adapter to convert this to flat file.
Regards
Bhavesh

Similar Messages

  • IDoc flat file over AS2 adapter to IDoc adapter

    Hi,
    The scenario is IDoc flat file(.txt) over AS2 adapter to IDoc adapter. Could anyone help on how to convert the IDoc flat file to xml in AS2 adapter to execute the mapping further? we are using PI 7.0.
    Thanks in advance!
    -zameer

    Hi,
          Since you are on Pi 7.0, you would not be able to use the modules for this in PI 7.1.
    You would need to refer this document for converting from Idoc flat to XML
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/46759682-0401-0010-1791-bd1972bc0b8a?quicklink=index&overridelayout=true
    In your sender AS2 adapter, you can pass the file as is to an abap mapping which will do the conversion to Idoc xml. the output of the abap mapping goes to your message mapping then for conversion.
    Another option would be to use a custom adapter module in the sender AS2 adapter to call the Aabap mapping to do the conversion into Idoc xml.
    The custom adapter module would do a JCO/RFC call which will do the conversion before passing the data back to the adpter module.
    Regards

  • IDoc Flat File Needed

    Hi Experts.
        I need the Idoc flat file for Delfor01(delivery schedule).
    Advance Thanks.

    Hi Bala,
    Follow the procedure
    IDOC to XML Convertion using ALE Interface
    1) Send an outbound IDOC data(MATMAS) to a flat file(XML) on client1(SENDER).
    - Create File Port (WE21) of XML Type for outbound file.
    - Specify the Physical directory and file under the Outbound File tab
    - Maintain Distribution Model (BD64) for sender ->receiver system.
    - Create Partner Profile (WE20) for logical system.
    - You can use this program RBDSEMAT (t/code BD10) to generate IDoc MATMAS file(s).
    _ Then you can FTP the file(s) to receiver system.
    2) Upload the flat file as an IDOC on the inbound sytem
    which is Client2(RECIEVER).
    - Create File Port (WE21) for inbound file.
    - Maintain Distribution Model (BD64) for receiver -> sender system.
    - Create Partner Profile (WE20) for logical system.
    - You can use this program RSEINB00 to upload IDoc MATMAS file(s).
    A sample scenario for idoc generation
    Sending System(Outbound ALE Process)
    Tcode SALE ? for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 ? Create Model View
    Tcode BD82 ? Generate partner Profiles & Create Ports
    Tcode BD64 ? Distribute the Model view
    Message Type MATMAS
    Tcode BD10 ? Send Material Data
    Tcode WE05 ? Idoc List for watching any Errors
    Receiving System(Inbound ALE )
    Tcode SALE ? for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 ? Check for Model view whether it has distributed or not
    Tcode BD82 -- Generate partner Profiles & Create Ports
    Tcode BD11 Getting Material Data
    Tcode WE05 ? Idoc List for inbound status codes
    ALE IDOC Steps
    Sending System(Outbound ALE Process)
    Tcode SALE ?3 for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 !V Create Model View
    Tcode BD82 !V Generate partner Profiles & Create Ports
    Tcode BD64 !V Distribute the Model view
    This is Receiving system Settings
    Receiving System(Inbound ALE )
    Tcode SALE ?3 for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 !V Check for Model view whether it has distributed or not
    Tcode BD82 -- Generate partner Profiles & Create Ports
    Tcode BD11 Getting Material Data
    Tcode WE05 !V Idoc List for inbound status codes
    Message Type MATMAS
    Tcode BD10 !V Send Material Data
    Tcode WE05 !V Idoc List for watching any Errors
    STEP 1)a Goto Tcode SALE
    Click on Sending & Receiving Systems-->Select Logical Systems
    Here Define Logical Systems---> Click on Execute Button
    go for new entries
    -System Name : ERP000
    -Description : Sending System
    -System Name : ERP800
    -Description : Receiving System
    press Enter & Save
    it will ask Request
    if you want new request create new Request orpress continue for transfering the objects
    B) goto Tcode SALE
    Select Assign Client to Logical Systems-->Execute
    000--> Double click on this
    Give the following Information
    -Client : ERP 000
    -City :
    -Logical System
    -Currency
    -Client role
    Save this Data
    Step 2) For RFC Creation
    Goto Tcode SM59-->Select R/3 Connects
    Click on Create Button
    RFC Destination Name should be same as partner's logical system name and case sensitive
    to create the ports automatically while generating the partner profiles
    give the information for required fields
    RFC Destination : ERP800
    Connection type: 3
    Description
    Target Host : ERP000
    System No:000
    lan : EN
    Client : 800
    User : Login User Name
    Password:
    save this & Test it & RemortLogin
    STEP 3) Goto Tcode BD64 -- click on Change mode button
    click on create moduleview
    short text : xxxxxxxxxxxxxx
    Technical Neme : MODEL_ALV
    save this & Press ok
    select your just created modelview Name :'MODEL_ALV'.
    goto add message type
    Model Name : MODEL_ALV
    sender : ERP000
    Receiver : ERP800
    Message type :MATMAS
    save & Press Enter
    STEP 4) Goto Tcode BD82
    Give Model View : MODEL_ALV
    Partner system : ERP800
    execute this by press F8 Button
    it will gives you sending system port No :A000000015(Like)
    STEP 5) Goto Tcode BD64
    select the modelview
    goto >edit>modelview-->distribute
    press ok & Press enter
    STEP 6) goto Tcode : BD10 for Material sending
    Material : mat_001
    Message Type : MATMAS
    Logical System : ERP800
    and Execute
    STEP 7)goto Tcode : BD11 for Material Receiving
    Material : 100-300
    Message Type : MATMAS
    and Execute --> 1 request idoc created for message type Matmas
    press enter
    Here Master Idoc set for Messge type MATMAS-->press Enter
    1 Communication Idoc generated for Message Type
    Now go to the physical directory and check your idoc converted as an XML File.
    Note enter required message type
    OR try this
    Just pass the IDoc Document no in the FM - IDOC_XML_TRANSFORM.
    IDOCS_OUTPUT_IN_XML_FORMAT
    IDX_IDOC_TO_XML
    it will transform the IDoc in XML format
    Regards,
    Sridhar

  • Picking a IDOC Flat File stored in SAP R/3 Application Server by SAP PI

    Hi,
    Can SAP PI pickup a IDOC Flat File stored in SAP R/3 Application Server Directory and send it back as an Inbound IDOC.
    Scenario:
    We have a data in the EXCEL Sheet, which will be used to a fill an IDOC and the IDOC will be just save in the SAP R/3 Application Server Directory, but can not be triggered due to its peculiar behavior. Afterwards, SAP PI should pole the SAP R/3 and pick up that IDOC Flat File from the R/3 Application Server and send it back to the SAP R/3 as an Inbound IDOC.
    For Ref: IDOC does not have a Outbound Process Code, thus can not be triggered and send to SAP PI. It is always used as a Inbound IDOC in SAP R/3 system.
    Regards,
    Saurabh

    SAP PI should pole the SAP R/3 and pick up that IDOC Flat File from the R/3 Application Server
    If SAP PI = 7.11 --> /people/william.li/blog/2009/04/01/how-to-use-user-module-for-conversion-of-idoc-messages-between-flat-and-xml-formats
    send it back to the SAP R/3 as an Inbound IDOC
    why to send  some information again into R3 which it already has? cant some internal code in R3 read the info from excel and then update the IDOC directly?

  • IDOC Flat File-- XI-- IDOC

    Hi,
       I have a requirement wherein we have to read the IDOC flat file and post it as IDOC to SAP using XI. I understand we have to use the Flat File Sender adapter and the IDOC Receiver Adapter. On the Sender Side we have to define the Content Conversion to convert the IDOC Flat File to IDOC XML. Writing File Content Conversion for the IDOC Flat File would be very tedious because of the number of fields and fixed structure of the flat file.
      I have don through the following guide Section 3.2 where it talks abt converting IDOC to IDOC XML using reportRSEINB00.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/xi-how-to-guides/how%20to%20convert%20between%20idoc%20and%20xml%20in%20xi%203.0.pdf
    I am not clear how to invoke this report in the Flat File Sender adapter. Also is there any other approach.
    Thanks
    Rajeev Gupta

    Hi Rajeev
    You have a flatfile at the sender side so you dnt  have any feasiable option to do other than FCC....FCC is not a tediuos one...if you can provide the strucutrre we will help you out...
    Check out you have a fixedlength file or piple separated one....
    In the functional design how many fields re present and buil the DT,MT MI accoprdingly.....
    you have to just use some conecnt conversion parameters that's it...
    item.fieldSeparator
    item.endSeparator
    item.fieldNames
    here item is your recordset name
    let us know your strucutre
    regards
    Nisar

  • Flat file message is not recognized.

    I have been pulling my hair out for days now.  I have an ANSI x12 214 v4010 document that validates against the xsd file in visual studio when I remove the Interchange headers
    I add the interchange headers back and deploy for it to pick up the file and I get the error:
    The flat file message is not recognized. Unrecognized messages are not allowed as per the specified configuration.
    This is the extent of the error information that Biztalk will respond with.  I have to assume the issue is with the interchange headers since I know the transaction portion of the document itself validates.  Below is a copy of my headers.
    ISA*00* *00* *ZZ*SEND *ZZ*RECV *040805*0416*U*00401*000000001*0*T*^~GS*QM*SEND*RECV*20040805*0416*000000001*X*004010~[214 Transaction]~GE*1*000000001~IEA*1*000000001~
    I am beginning to believe the problem may be due to the trading partner agreement.  I originally didn't have an agreement at all and was just publishing my service.  I have now added two partners for the send and the receive.  I also created
    an agreement with the Hosted Partner qualifier matching the sender info in the header and the Guest Partner being the receiver info.  I set the version and type to match, added the sender application qualifier (GS02) which matches the sender info (ISA06)
    and set the schema to the one I validate locally X12_00401_214.
    Despite having the agreement in place that matches the headers I still receiving a flat file message not recognized error with no additional error information.
    Please rescue me from the insanity...

    Hi,
    We need a few more details about his scenario.
    have you uploaded this particular schema to the service?
    What kind of bridge are you using – EDI / AS2 / XML
    What tool are you using to push the message to BizTalk service? If you are using EDI / As2 bridge, are you adding proper HTTP headers while sending message from the client?
    You may go through the blog
    Test the Bridges - Post messages – 3 easy tools for the developers
    http://blogs.msdn.com/b/mabs/archive/2014/10/14/test-the-bridges-post-messages-3-easy-tools-for-the-developers.aspx
    Check the section
    Considerations for the EDI / AS2 Bridges
    Hope this helps you
    Girish Prajwal

  • Adapter-specific message attributes for the JMS Receiver adapter

    Dear SAP Community,
    We are trying to activate some parameters at message level when SAP XI sent an interface (XML data) to IBM Websphere MQ. Programmaticaly, this is done the following way:
           TextMessage outMessage = session.createTextMessage();
           MQQueue replyToQ = new MQQueue("TESTQM01","SYSTEM.ADMIN.ACTIVITY.QUEUE");
           Destination replyTo = (Destination) replyToQ;
           outMessage.setJMSReplyTo(replyTo);
           outMessage.setIntProperty("JMS_IBM_Report_Exception", MQC.MQRO_EXCEPTION);
           outMessage.setIntProperty("JMS_IBM_Report_Expiration", MQC.MQRO_EXPIRATION);;
           outMessage.setIntProperty("JMS_IBM_Report_COA", MQC.MQRO_COA);
           outMessage.setIntProperty("JMS_IBM_Report_COD", MQC.MQRO_COD);
           outMessage.setIntProperty("JMS_IBM_Report_Discard_Msg", MQC.MQRO_DISCARD_MSG);
    This code is working fine.
    Since the documentation about this feature (Adapter-specific message attributes) is very light, We am not sure about the interpretation we made.
    First, we defined the following attributes: MS_IBM_Report_Exception, JMS_IBM_Report_Expiration, JMS_IBM_Report_COA, JMS_IBM_Report_COD, JMS_IBM_Report_Discard_Msg. All of them are with type int.
    Then we changed the mapping (XSL) to pass the value to the dynamic configuration, using the technical names (DCJMSMessageProperty0, ..., DCJMSMessageProperty4) and the value of the constants. We also specified a value in the Reply To Queue parameter of the adapter. As a test, We also change another parameter via the mapping (the correlation ID, to use the idoc number) and according to the log of the processed message, every thing is finde. According to the trace of the JMS adapter, everything is fine to. However, this has no impact on the message, only the correlation ID is changed.
    The JMS server is IBM Websphere MQ (v6.0.2.1). It is already in production and working fine. This is a change we have been asked to implement.
    Has anyone experience with the JMS receiver adapter-specific message attrbitutes ? What have we done wrong ?
    Any help is greatly appreciated.
    Regards,
    Gregory PFISTER
    SAP XI Analyst - Holcim

    Hi Neha,
    pls do chk the below links for SOAP adapter message attributes
    http://help.sap.com/saphelp_nwpi71/helpdata/en/fc/5ad93f130f9215e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/43/0a7d1be4e622f3e10000000a1553f7/content.htm
    http://publib.boulder.ibm.com/infocenter/wbihelp/v6rxmx/index.jsp?topic=/com.ibm.wbia_adapters.doc/doc/sap_xi/sapximst38.htm
    http://publib.boulder.ibm.com/infocenter/wbihelp/v6rxmx/index.jsp?topic=/com.ibm.wbia_adapters.doc/doc/webservices/webservices16.htm
    Regards
    Sampath

  • Send a flat file with fixed lengths to XI 3.0 using a Central File Adapter?

    Hello,
    I'm wondering if someone have experience setting up conversion for different record structures. The example shown,
    /people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter,
    (in a greate way) only picture one kind of structure.
    How should it be done if the file would contain
    10Mat1
    20100PCS
    The first record structure has columns
    ID(2),Material(10)
    The second redcord structure has columns
    ID(2),Quantity(3), Unit of messure (3)
    Brgds
    Kalle
    Message was edited by: Karl Bergstrom

    The configuration would be like follows:
    Content Conversion Parameters:
    Document Name: <your message type name>
    Document Namespace: <your message type namespace>
    Document Offset: <leave empty>
    Recordset Name: <any name>
    Recordset Namespace: <leave empty>
    Recordset Structure: row1,,row2,
    Recordset Sequence: any
    Recordsets per Message: *
    Key Field Name: ID
    Key Field Type: String
    Parameters for Recordset Structures:
    row1.fieldNames           ID,Material
    row1.fieldFixedLengths    2,10
    row1.keyFieldValue        10
    row2.fieldNames           ID,Quantity,UOM
    row2.fieldFixedLengths    2,3,3
    row2.keyFieldValue        20
    Instead of row1 and row2 you can choose any name.
    Regards
    Stefan

  • JMS Receiver Adapter to MQ - additional message property error

    Hi,
    I'm trying to add addional message properties to a Receiver JMS message for MQ Server queue. Creating the message in the MQ queue only works when I don't try to
    add additional message properties. As soon as I try to add additional message properties the XI-Monitor says it's OK but there is no message in the queue.
    Our system constellation is a bit odd cause we implemented the JMS/MQ classes of release 5.3 in XI/J2EE.
    Our actual used MQ Server is on release 5.1 due to compatibilty reasons of other productive software.
    Is there a need to use a MQ server of release 5.3 ?
    Has anybody a step by step description for implementing a JMS receiver Adapter for MQ with with additional message property (f.ex. mesType = salesOrder) in the MQ header?
    Thanx a lot in advance
    Hans

    Hi,
    You also might want to look at sap note 856346...for this ..
    2.6) I am connecting to a JMS provider using JNDI mode. How do I add pass an extra name,value property pair while setting up the JNDI initial context?
    Answer: Assuming that your property value is a string, please add the following name, value pair in "JMS Additional properties" table of your channel configuration:
    JNDI.InitialContext.property.X=java.lang.String propertyName, java.lang.String propertyValue
    where X is a number, the LHS part needs to be put in the name column and the RHS part in the value column of the table respectively.
    This note covers frequently asked questions that arise during the installation, configuration or administration of the XI JMS Adapter from the Adapter Framework (AF).
    Other terms
    JMS - Java Message Service
    AF - Adapter Framework
    AE - Adapter Engine
    SP - Service Pack
    Reason and Prerequisites
    This note clarifies the frequently asked questions on the XI/PI JMS adapter for released 3.0, 7.0 and 7.1 in the form of an FAQ. References to external information is provided at the end.
    Solution
    1. Documentation
    1.1) Where do I find the JMS adapter documentation?
    Answer: In the SAP online help. Go to http://help.sap.com and select  SAP Netweaver-> SAP Netweaver 7.1 or SAP NetWeaver 7.0 (2004s) or SAP Netweaver 2004. This opens up SAP Library topic page for that release.
    For releases 3.0 and 7.0:
    Select SAP Netweaver Library -> SAP Netweaver by Key capability-> Process Integration by Key Capability -> SAP Netweaver Exchange Infrastructure -> Runtime -> Connectivity -> Adapters -> JMS Adapter.
    For releases 7.1:
    Select SAP Netweaver Process Integration 7.1 -> SAP Netweaver Process Integration Library -> Function Oriented View > Advanced Adapter Engine.
    In the topic page click on the JMS Adapter link.
    Alternatively, you may simply enter the search string "JMS adapter" and navigate to the documentation page directly from the relevant search results. This is much faster.
    1.2) Which JMS providers are supported?
    Answer: The JMS Adapter supports JMS 1.02b and 1.1. JMS providers that also claim to be compatible with JMS 1.02b or 1.1 can be accessed using the JMS Adapter.
    Furthermore, SAP makes no assertions as to whether a particular JMS provider is tested or can be recommended, because SAP has not set up a certification or testing process.
    2. Functions and architecture
    2.1) Does the JMS Adapter support JMS topics (publish&subscribe)?
    Answer: No. Currently the JMS Adapter works with JMS queues because 100% Exactly Once (In Order) service quality can only be guaranteed with  JMS queues. However, this capability might be planned for introduction at a future release. (no planned time estimate)
    2.2) I have JMS message properties that are of significant. How do I get this data into XI? How do I get this data out of XI?
    Answer:
    A feature generically referred to as XI adapter-specific message properties was introduced in the adapter framework. This allowed additional adapter information to be attached to a XI message which can be used the routing, mapping and BPE. The message properties of different adapters are differentiated by namespaces.
    If you are on XI 3.0 support pack 18 onwards, the JMS adapter allows you to copy JMS message properties into these XI adapter specific message properties (at the sender JMS channel), and to copy the values of XI adapter specific message properties back into JMS message properties (at the receiver JMS channel).
    The JMS adapter currently supports upto 10 JMS message properties to be copied into the XI message properties with the name DCJMSMessageProperty0 to DCJMSMessageProperty9. The configuration details of how to achieve this are explained in the sub-topic pages of the JMS adapter documentation. (See sub topics: "Configuring the Sender JMS adapter", "Configuring the Receiver JMS adapter")
    JMS Message properties can have values belonging to types: boolean, byte, short, int, long, float, double, and String (defined in the specification). These are all normalized to strings when converted to the their respective XI message properties at the sender JMS channel.
    However, in the receiver JMS channel configuration, you can enter specific JMS message property types, such that these normalized XI message properties may be coerced back into their original types (or any compatible JMS message property type) when translating a XI message into a JMS message.
    Transfer of custom JMS Message properties from/to XI adapters-specific message attributes is only supported for JMS compliant messages, i.e. this feature will not work for Websphere MQ in legacy mode.
    Deprecated Information on this feature
    Between support pack 14 to support pack 18, the JMS adapter allowed the allowed you append only up to two JMS string properties to the XI message in the sender channel, which could then be analyzed in XI routing, mapping and BPE. In the JMS receiver channel, the XI adapter-specific message attributes could be read, and up to two JMS string properties could be set. The names of the (now deprecated) XI message properties were DCJMSStringProperty1 and DCJMSStringProperty2.
    Regards
    Ravi Raman

  • IDoc flat file to IDoc

    I am receiving flat file in SFTP Server which need to be posted into SAP (No mapping involved)
    What will be the best approach ?
    1. I tried using IDOCFlatToXmlConvertor (The limitation in the format of source file. The parent and child node relationship should be explicitly mentioned in IDoc flat file which legacy system is not able to do) - Any workarounds ?
    2. I moved the Idoc flat file into SAP application server. Now need to schedule job using program RSEINB00
    3. File Content Conversion
    Any other better solution ? Appreciate your help.
    Thanks and regards,
    Jose Augastine

    For converting Idoc Flat file to idoc xml, ABAP mapping is one of the feasible option.

  • Create and Handle empty msg in JMS receiver Adapter

    Hi,
    In my interface scenario, I will have to create a msg output if certain conditions are met and should not create a msg if otherwise..
    I am using a Graphical Mapping and the receiver is JMS. I have some questions..
    1. Using Graphical mapping, Can I create an empty msg - If I dont map the root node if the conditions are not met, what happens to the msg during runtime ?? Will it create empty payload and does it error out as there is empty payload ??
    2. Like File adapter - is there a way to Ignore empty msg in JMS receiver adapter - so that it doesnt write any empty msgs i nthe queue..
    Any ideas/suggestions/experiences greatly appreciated please...
    Thank you
    Thanujja..

    Natesa,
    My bet. I am sorry I am wrong.
    One thing comes to my mind is you can do a multi mapping. So if it is ok then send to one receiver and if it exception then send as flat file which you dont use.
    Here since only one mapping is going to execute and the other going to fail you can write your own message exception in mapping stating "Its a know error". This is because if it is in produciton if this fails then it creates an alert. So just to tell to the end users it is ok you are populating the generic error. I know its not a good solution, but a work around kind of thing.
    Regards,
    ---Satish

  • JMS Receiver Adapter Conversion.......

    Hi All,
    I am using JMS Receever Adapter for sending data to Mainframe MQ. The message converted to Fixed length format.
    At the end of every record I am getting "."
    Output of JMS Receiver Adapter
    abcde  ghijk  lmn      .
    hhffh    jhjghj jgjjggj   .
    dfhf      hjhjf   jhjj       .
    In the Mainframe MQ, I am getting error for dots(".")
    Plz any one help me ,how to remove dots at end of every record.
    regards,
    Pachika

    Hi, it is not part of mapping.
    It is coming automatically due to JMS Receiver Adapter confguration.
    src xml file:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:mt_test xmlns:ns0="http://sap.com/xi/POC">
       <row>
          <Name>abcdef</Name>
          <id>147962</id>
          <org>sffjffjhjfjh</org>
       </row>
       <row>
    I used JMS Receiver Adapter...with all parameters for fixed length file. Adapter placing the file directly in Websphere MQ.
    Output I need:
    abcdef   147962   sffjffjhjfjh  .
    I need to remove the "."
    regards,
    pachika

  • JMS Receiver Adapter Question

    We are using a JMS receiver Adapter Channel to send data from XI to MQ Series.  In our environment, we have 2 Java Server instances configured.  The system is successfully sending files that hit the first Java instance, but the messages drop off and don't even make it to MQ Series when they hit the second Java instance.  Has anyone ever seen this problem with JMS receiver Adapter channels?
    Chris

    Hi Chris
    I think you are talking about High availability.
    In that case please check whether two instances installed same support pack or not.
    Thanks
    Sai

  • JMS Receiver Adapter - com.ibm.websphere.naming.WsnInitialContextFactory

    Hello experts,
    I am trying to configure JMS Adapter to Access Websphere Application Server via JNDI. The configuration is as follow:
    Initial Context Factory: com.ibm.websphere.naming.WsnInitialContextFactory
    Connection Factory: jms/messageQueueCF
    Server URL: iiop://ammtnode.iubs.intra:2809/
    Queue Name: jms/EXT_INPUT_QUEUE
    I deployed all required jar files but Iu2019m still unable to connect to WAS because adapter cannot initialize ORB:
    javax.naming.NamingException: Failed to initialize the ORB
    I wrote a small java class to check where the problem was:
    ============================================================================
    Hashtable env = new Hashtable();
    env.put(Context.INITIAL_CONTEXT_FACTORY,"com.ibm.websphere.naming.WsnInitialContextFactory");
    env.put(Context.PROVIDER_URL, "iiop://ammtnode.iubs.intra:2809/");
    env.put("java.naming.corba.orb",org.omg.CORBA.ORB.init((String[])null,null));
    Context jndiContext = null;
    try {
    jndiContext = new InitialContext(env);
    ConnectionFactory connectionFactory = (ConnectionFactory) jndiContext.lookup("jms/messageQueueCF");
    Connection qConn = connectionFactory.createConnection();
    Session qSession = qConn.createSession(false,Session.AUTO_ACKNOWLEDGE);
    Queue q = (Queue) jndiContext.lookup("jms/EXT_INPUT_QUEUE");
    MessageProducer producer = qSession.createProducer(q);
    TextMessage message = qSession.createTextMessage();
    message.setText(text);
    producer.send(message);
    producer.close();
    qSession.close();
    qConn.close();
    } catch (Exception e) {
         e.printStackTrace();
    ============================================================================
    I got the same error until I wrote this line:
    env.put("java.naming.corba.orb",org.omg.CORBA.ORB.init((String[])null,null));
    And everything worked fine. Now I want to do the same in my JMS Receiver adapter but I donu2019t know how to introduce this line in the Initial Context Environment. I tried as JMS additional parameters and additional properties as well. However, nothing worked. Does anybody know what Iu2019m doing wrong?
    Thank you in advance!

    Here I post the entire error:
    0#0#Warning##Java###Catching #1#com.sap.aii.adapter.jms.api.connector.ConnectorException: Error looking up connection fact
    oryjms/messageQueueCF, for profile: ConnectionProfile of channel: CC_I002_AMM_JmsReceiveron node: 5949650 having object id: 0
    360697bc61b3666aba07a2708ca095a: javax.naming.NamingException: Failed to initialize the ORB
            at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory(JndiConnectorImpl.java:134)
            at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.doConnect(ConnectorImpl.java:247)
            at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.doConnect(JndiConnectorImpl.java:185)
            at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.connectIfDisconnected(ConnectorImpl.java:170)
            at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.connect(ConnectorImpl.java:153)
            at com.sap.aii.adapter.jms.core.channel.ChannelImpl.doStart(ChannelImpl.java:279)
            at com.sap.aii.adapter.jms.core.channel.ChannelImpl.start(ChannelImpl.java:166)
            at com.sap.aii.adapter.jms.core.channel.AdapterImpl$1.run(AdapterImpl.java:411)
            at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
            at java.security.AccessController.doPrivileged(Native Method)
            at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:152)
            at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:247)
    Caused by: javax.naming.NamingException: Failed to initialize the ORB [Root exception is java.lang.ClassCastException: class
    com.sap.engine.system.ORBProxy:sun.misc.Launcher$AppClassLoaderAT5d0385c1 incompatible with class com.ibm.CORBA.iiop.ORB:libra
    ry:com.sap.aii.adapter.libATcom.sap.engine.boot.loader.ResourceMultiParentClassLoaderAT131b92e6ATalive]
            at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:364)
            at com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:421)
            at com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:123)
            at com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:798)
            at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:164)
            at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:179)
            at javax.naming.InitialContext.lookup(InitialContext.java:351)
            at javax.naming.InitialContext.lookup(InitialContext.java:351)
            at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory(JndiConnectorImpl.java:130)
            ... 11 more
    Caused by: java.lang.ClassCastException: class com.sap.engine.system.ORBProxy:sun.misc.Launcher$AppClassLoaderAT5d0385c1 incom
    patible with class com.ibm.CORBA.iiop.ORB:library:com.sap.aii.adapter.libATcom.sap.engine.boot.loader.ResourceMultiParentClass
    LoaderAT131b92e6ATalive
            at com.ibm.ws.orb.GlobalORBFactory.init(GlobalORBFactory.java:92)
            at com.ibm.ejs.oa.EJSORBImpl.initializeORB(EJSORBImpl.java:179)
            at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:83)
            at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:59)
            at com.ibm.ejs.oa.EJSORB.init(EJSORB.java:102)
            at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:356)
            ... 19 more
    Caused by:
    javax.naming.NamingException: Failed to initialize the ORB [Root exception is java.lang.ClassCastException: class com.sap.eng
    ine.system.ORBProxy:sun.misc.Launcher$AppClassLoaderAT5d0385c1 incompatible with class com.ibm.CORBA.iiop.ORB:library:com.sap.
    aii.adapter.libATcom.sap.engine.boot.loader.ResourceMultiParentClassLoaderAT131b92e6ATalive]
            at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:364)
            at com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:421)
            at com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:123)
            at com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:798)
            at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:164)
            at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:179)
            at javax.naming.InitialContext.lookup(InitialContext.java:351)
            at javax.naming.InitialContext.lookup(InitialContext.java:351)
            at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory(JndiConnectorImpl.java:130)
            ... 11 more
    Caused by: java.lang.ClassCastException: class com.sap.engine.system.ORBProxy:sun.misc.Launcher$AppClassLoaderAT5d0385c1 incom
    patible with class com.ibm.CORBA.iiop.ORB:library:com.sap.aii.adapter.libATcom.sap.engine.boot.loader.ResourceMultiParentClass
    LoaderAT131b92e6ATalive
            at com.ibm.ws.orb.GlobalORBFactory.init(GlobalORBFactory.java:92)
            at com.ibm.ejs.oa.EJSORBImpl.initializeORB(EJSORBImpl.java:179)
            at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:83)
            at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:59)
            at com.ibm.ejs.oa.EJSORB.init(EJSORB.java:102)
            at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:356)
            ... 19 more
    Caused by:
    javax.naming.NamingException: Failed to initialize the ORB [Root exception is java.lang.ClassCastException: class com.sap.eng
    ine.system.ORBProxy:sun.misc.Launcher$AppClassLoaderAT5d0385c1 incompatible with class com.ibm.CORBA.iiop.ORB:library:com.sap.
    aii.adapter.libATcom.sap.engine.boot.loader.ResourceMultiParentClassLoaderAT131b92e6ATalive]
            at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:364)
            at com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:421)
            at com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:123)
            at com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:798)
            at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:164)
            at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:179)
            at javax.naming.InitialContext.lookup(InitialContext.java:351)
            at javax.naming.InitialContext.lookup(InitialContext.java:351)
            at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory(JndiConnectorImpl.java:130)
            at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.doConnect(ConnectorImpl.java:247)
            at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.doConnect(JndiConnectorImpl.java:185)
            at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.connectIfDisconnected(ConnectorImpl.java:170)
            at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.connect(ConnectorImpl.java:153)
            at com.sap.aii.adapter.jms.core.channel.ChannelImpl.doStart(ChannelImpl.java:279)
            at com.sap.aii.adapter.jms.core.channel.ChannelImpl.start(ChannelImpl.java:166)
            at com.sap.aii.adapter.jms.core.channel.AdapterImpl$1.run(AdapterImpl.java:411)
            at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
            at java.security.AccessController.doPrivileged(Native Method)
            at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:152)
            at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:247)
    Caused by: java.lang.ClassCastException: class com.sap.engine.system.ORBProxy:sun.misc.Launcher$AppClassLoaderAT5d0385c1 incom
    patible with class com.ibm.CORBA.iiop.ORB:library:com.sap.aii.adapter.libATcom.sap.engine.boot.loader.ResourceMultiParentClass
    LoaderAT131b92e6ATalive
            at com.ibm.ws.orb.GlobalORBFactory.init(GlobalORBFactory.java:92)
            at com.ibm.ejs.oa.EJSORBImpl.initializeORB(EJSORBImpl.java:179)
            at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:83)
            at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:59)
            at com.ibm.ejs.oa.EJSORB.init(EJSORB.java:102)
            at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:356)
            ... 19 more

  • JMS receiver adapter Error

    Hi Experts,
    Any idea about this error. We are getting following in JMS receiver adapter in PI 7.1.
    Delivering the message to the application using connection JMS_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Connector for ConnectionProfile of channel: JMS_Receiver_THQPRD2_Slow_Replyon node: 284760550 having object id: cf2f6eb7d6c93902b64b27bfcaad0ba5 encountered error: MQJMS1016: an internal error has occurred. Please contact your system administrator. Detail: java.lang.NullPointerException: while trying to read the field 'ccsid' of an object loaded from field com.ibm.mq.MQSESSIONClient.comms of an object loaded from local variable '<0>' in sending to destination queue:///QR.EAIPRD.THQPRD2.REPLY.SLOW?targetClient=1, the message message: JMS Message class: jms_text  JMSType:         null  JMSDeliveryMode: 2  JMSExpiration:   0  JMSPriority:     4  JMSMessageID:    null  JMSTimestamp:    0  JMSCorrelationID:ID:414d5120504c535748353533202020204e6324ae23eb5b2d  JMSDestination:  null  JMSReplyTo:      null  JMSRedelivered:  false XPLOR     PIPXSDI2030 45219q00282YSDI2030PROCESS_MQSERIES              PLSWH553                     Another 12,761 character(s) omitted: javax.jms.JMSException: MQJMS1016: an internal error has occurred. Please contact your system administrator. Detail: java.lang.NullPointerException: while trying to read the field 'ccsid' of an object loaded from field com.ibm.mq.MQSESSIONClient.comms of an object loaded from local variable '<0>'.
    Thanks,
    Hari

    Hello,
    The error indicates a JMS driver issue.
    Another customer resolved this issue by updating their MQ and the MQ drivers version (in their case to 6.0.2.8.)
    You could try contacting IBM for advice on a similar upgrade.
    #1086303 XI JMS Adapter and IBM Websphere MQ: FAQ
       12)What is the recommended version of MQ drivers for the PI JMS
    Adapter - IBM MQ connectivity ?
    Kind regards,
    Sarah

Maybe you are looking for

  • Is there an app to allow users to enter their name on a shared iPad to track who used it?

    We have a pool of iPad 2 devices running iOS 7.0.4 used in a business environment. This pool of shared iPads is distributed and shared between multiple users. I would like better accountability of each iPad as they are being taken/used by employees.

  • Intercompany procurement

    Hi, I am creating intercompany procurement scenarios between 2 company codes but I want to activate free goods functionality. However based on that I create delivery in vl10b and when I do proforma invoice using VF01, i AM GETTING AN ERROR-iTEM IS NO

  • Cabling with 733x controller

    The 733x motion controller has two connectors - one for "motion I/O" and one for "digital I/O". I simply want to bring both of these out to screw terminals, but the docs are very vague as to which cables to use for the motion I/O connector. Can I use

  • Item rendering order

    I have a button region which displays various different buttons depending on the values of page level items. The button region was originally in region position 'Page Template Body (2)' and it was working fine. I am now attempting to move the button

  • IOS 5 Audiobook Problem

    Just updated to 5.0.1 and now my audiobooks do not play. If try to play the track, it immediately exits out into track menu. not sure if problem with ios 5 or itunes