Multiples payloads in a single message

Hi everybody,
I have a scenario where I will receive multiples payloads in a single message (several email attachments) and I have to call a WebService for each different payload, or email attachment in this case.
Scenario: Mail Sender (multiples attachments/payloads) -> XI -> SOAP Receiver
These attachments in the email are XML files with the same structure (WSDL) that  must map it to the WebService.
I'm thinking in receive these payloads using Java Mapping to merge all these XML files in a single fat XML structure and after that use a BPM to do a Loop in order to call the WebService for each part of this fat XML. But I'm not sure if it is the best option and I don't really know how to do this BPM.
Anyone has a suggestion how should I do this?
Regards,
Rogério

You need to write an adapter module for merging all the XML attachements in to one. Then you should use 1..n mapping in the BPM for splitting them in to multiple payloads.
BPM - Receive -> Transform (1..N) ->Block -> for each (message) ->send ->close block
VJ

Similar Messages

  • How do I host multiple domains on a single Messaging Server?

    How do I host multiple domains on a single Messaging Server?
    <p>
    To host multiple domains on one Messaging Server, use the
    mailAlternateAddress attribute. If you want to host two domains
    (customer1.com and customer2.com) on your server mail1.domain.com,
    make sure that:
    The various domains (in DNS) point to the installed mail server
    (you must have the MX records that
    points mail for customer1.com to mail1.domain.com and
    customer2.com to mail1.domain.com)
    That each person receiving mail at customer1.com and
    customer2.com has an appropriate mailAlternateAddress
    attribute describing the appropriate email address. For
    instance, John Doe can have an email address (i.e. the value
    of the 'mail' attribute for the John Doe LDAP entry) of
    [email protected] and receive his mail on
    [email protected] (the value of the mailAlternateAddress
    attribute)
    With Messaging Server 3.5, mailAlternateAddress can take the
    form of @mail1.domain.com. If jdoe's mailAlternateAddress is
    set to @mail1.domain.com, mail sent to [email protected]
    will be delivered to [email protected]

    jaygatsby1123 wrote:
    So what exactly am I doing with virtual hosts?  There is a place for Aliases...  What would I put in the "Aliases" box?
    Any other host name that you want to resolve to the specified virtual host.  It's quite literally an alias.
    if you want www.example.com and www.example.org to end up at the same web site and you already have a virtual host — Apple refers to virtual hosts as sites — configured for www.example.com in Server.app, then you'd add www.example.org as an alias for the www.example.com virtual host (site).
    Virtual hosts are implemented in a web server using some details of the HTTP or HTTPS protocol, and what the web browser (client) specified.  The client gets handed an IP address or a domain name by the user, and the client then fetches the associated IP address for the target web server from the client's DNS services or local host database, and the client then connects to the IP address and passes over the text string that the user had requested — the IP address or domain name or even some local shortcut set up in the client system — via the HTTP or HTTPS protocol.  The web server receives and processes this arriving text string from the client, and uses it to select which web site to render back to the web client.   One subtle detail lurks here, too: the server's own DNS configuration really isn't involved in the selection of the virtual host.

  • Want to add multiple idoc type with single message type.

    Hi Gurus,
    I have a problem. I want to add multiple idoc type with single message type in WE20.
    How we can do this in WE20 or is there any other way to do that?
    Please help me.
    Thanks in advance.
    Srimanta.

    hi,
    basically in partner profile i.e. in we20 , we add details to the receiver / sender port that we have created using we21.
    so what exactly we do in that is that we first use the message type for those idocs that we have created.
    now based on those message type we create a process code. now this is the reason why you cannot apply several message types with the same name in we20... as process code is unque for each message type.
    so thats why you can only assign the same message name to several idocs in we82 and then in we20 define the process code for that message type.
    it will solve your problem.
    hope this will help you!!!
    Thanks & regards,
    punit raval.

  • Any way to view multiple replies/forwards from single message

    In Entourage it was possible to do this: view all replies to and forwards from a single message. In Mail, on the other hand, by default it's only possible to view a single reply/forward when clicking on the reply/forward arrows in the view column.
    Is there any way to see all replies/forwards to a single message? It would be much more convenient than going through the "Sent" box looking for correspondence. This is one area where Entourage 2004 was superior to Mail.
    Thanks in advance.

    I've used this as well. The problem with that is clicking on the reply/forward arrow will only display one reply/forward. Sometimes I reply and forward or reply to one message several times. Only one (the first or last I assume) will ever display. I would like to see all correspondences for that single message in the inbox (or elsewhere). This was quite a nice feature of Entourage, which actually was a pretty decent email client save for that single database.
    Thanks again for your suggestions.

  • Multiple payload mapping in zip file..

    Hi,
    is it possible to map multiple Payloads in one XI Message?
    My Source File is a zip (xml files) I unziped it in Sender CC
    I have message structure as this in my integration server
    XI Message
    - payload 1
    - payload 2
    As there are multiple structure(different structure) in zip file, I can't create Message structure.
    I want to map every file in zip seperately and send it to different location.
    I used 2 Interface Mapping and also in interface determination try to select the Interface Mapping based on the file name in zip file. But I m getting error Unable to find the Inbound structure at Interface determination.
    If I won't give any condition in interface determination. the first payload is getting mapped.
    So, is it possible in general to get multi payloads mapped without BPM?
    My Questions are:--
    +How to create a structure for Input message (All the files in zip have different structure).?+
       +Why am I getting error "Unable to find the Inbound structure" at Interface determination even though I m giving the correct file name for both.+
      +Is it possible using java mapping...? If yes then please throw some light....+
    Thanks and best regards
    Ankita

    hi prateek
      thnaks for urs quick response.
    I have different structure at the receiver end also. for every file in zip folder there will be different mapping.
    you may unzip the files at a temporary location.
    Is there any way I can hold the files(in one zip folder) in PI after unzipping and process ony by one..
    Please help.
    Thanks
    Ankita

  • Multiple records as a single transaction in JDBC Receiver Adapter

    Hi,
    I am sending multiple records in a single message to a JDBC receiver adapter to get updated to the database. How to make all the insert a single transaction. Like all the records has to be inserted else all has to be rolled back.
    For eg for table Employee two fields EMPNO and EMPNAME
    EMPNO  EMPNAME
    1            Jay
    2            Christie
    These two records are in the same message and has to be updated
    if one fails the other has to be rolled back.
    How can i achieve it using a JDBC Receiver Adapter.
    Thanks
    Sebin

    Hi Rolf Micus,
    My xml structure to insert 2 tables are as follow:-
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_PODB xmlns:ns0="http://abeam.com/xi/fer_filejdbc_scenarios1">
    ..   <STATEMENT_HEADER>
    ....      <ROW action="INSERT">
    ......         <TABLE>ZPO_HEADER</TABLE>
    ......        <access>
    ........            <PONUMBER>001</PONUMBER>
    ........            <PODATE>20070801</PODATE>
    ........            <POAMOUNT>200.99</POAMOUNT>
    ....         </access>
    ....      </ROW>
    ..   </STATEMENT_HEADER>
    ..   <STATEMENT_DETAIL>
    ....      <ROW action="INSERT">
    ......         <TABLE>ZPODETAIL</TABLE>
    ......         <access>
    ........            <PONUMBER>001</PONUMBER>
    ........            <PONO>1</PONO>
    ........            <POITEMCODE>A12345</POITEMCODE>
    ........            <POITEMDESC>Testing A</POITEMDESC>
    ........            <POITEMAMOUNT>2990.00</POITEMAMOUNT>
    ........            <POITEMQTY>55</POITEMQTY>
    ......         </access>
    ....      </ROW>
    ..   </STATEMENT_DETAIL>
    </ns0:MT_PODB>
    Fro the structure that you have declared..there is only contained 1 statement, try to admend your MT to have 2 statements.
    If you wish to insert multiple records, just create a loop/multiple of access tag inside STATEMENT tag. For example, multiple records insert into Header should have multiple access tag in Header STATEMENT. Same goes for muliple records insert into Details STATEMENT should have multiple access tag in Details STATEMENT.
    With this structure, whenever any records insert/update/delete failed...it will rollback all the transactions together, ie. Header and Details.
    PS: For different table, please create different STATEMENT.
    Hope it helps.
    Message was edited by: Pua Ming Fei

  • Multiple UPDATE statement in a message

    Hi Experts,
    Here is a scenario where we need to send multiple UPDATE statements in single message
    the structure is as below.
    <Table_name> 0..unbounded occurrence
               <action> UPDATE
               <access>
                       <non key fields>
               </access>
               <key>
                       <key fields>
               </key>
    in the above case the node <Table_name> would occur multiple times, the issue is only the first occurrence of the update statement is executed, rest of the update statements are ignored.
    did my approach is wrong, please help...
    thanks.

    Bandana,
    No your approach is not wrong. But you may need to tweak little bit to get your requirement correctly.
    Please follow Raj or Jais reply in this threads:
    JDBC Receiver - Multiple rows Update
    JDBC receiver multiple records UPDATE
    But with this approach it would be multiple calls. If I were you I would write SQL_DML statement to update all at once.
    Regards,
    ---Satish

  • Zipping multiple Payloads to single Zipfile using payLoadZipBean

    Dear Friends,
    Can you help me in doing this sceanrios:
    I'm trying to send multiple payloads from source (selection
    of multiple payloads is done by checking Advance selection for
    Source file)  to PI, that inturn Zip all Payloads in to a single Zip FIle.
    (note: payLoadZipBean is giving individual zip file for every single payload but I want it all in single Zip file)
    And also can I zip, Additional Files sent through File Adapter,
    as these are not considered as payloads. Plz correct me If I'm wrong.
    I request you plz dont paste any links to blogs or forums.
    I'm trying to create a module to perform this scenario,plz suggest me better answers, in case module develpment is not required.
    Dear Stefen, I hope I will get a good answer from you soon.
    And thanks for suggesting me to post a thread for this issue.
    Thanks in advance
    Praveen K Kurni

    Dear Sameer,
    I did studied the SAP note;
    By using these parameters
    Module Key: zip
    Parameter name: zip.mode
    Parameter value: zipAll
    Module Key: zip
    Parameter name: zip.filenameKey
    Parameter value: contentType
    Module zips all payloads as individual zipfiles
    for ex:
    my files are:
    1. abc1.xml
    2. abc2.xml
    3. abc3.xml
    module payLoadZipBean zips these payloads as
    1. abc1.zip
    2. abc2.zip
    3. abc3.zip
    But I want all the files to be zipped in to single zipped file:
    let say abc_all.zip
    Thanks any way
    Praveen K Kurni

  • How can I connect multiple clients to a single client ?

    I am currently developing an instant messaging program.I created a server and connected multiple clients to it by using thread logic.However I do not know how to connect multiple client to a single client.
    What shall I do for that?Does anybody know a good tutorial or sample program?Or shall anybody explain me what I shall do for building the Instant Messaging part of my chat program?
    Thank u in advance.

    You may use UDP multicast socket. But since you are using the UDP protocol you might risk losing the data that you send since UDP does not guarantee the safe transfer of data.
    Alternately, you might create a server that allows multiple client to connect to it whose connection Socket objects are then stored in a Vector <Socket> object. The server then sends back data to the connected client about the other clients connected to it. Now when the client wants to send data (like an IM) to another connected client, it has to send a request to the server specifying the client login name and the server in turn streams that particular client's Address and Port to the requesting client. The requesting client then initiates the connection with the other client and then starts a conversation. One more thing, when the client communicates it needs to send information to the server like the name by which it likes to be referenced. In this scenario the server acts like a central repository for clients to query the existence of other clients in the chat room. Each client here runs a thread that listens to incoming connections and when a connection is established, may be opens a IM window or something.
    The third option is to make the server to relay the information from one client to another. Like say, I'm connected to whoopy server and i want to send "Hello" to jackson, then i send the message (ie, Hello) along with the name of the client to which i wish to send it to (ie, jackson). The server then performs a lookup in its Vector <Socket> object and then initiates a connection with jackson and sends the information. However, this method is pretty costly in that you will be wasting a lot of processing behind the server.
    --Subhankar
    P.s. If you stumble upon any other brilliant ideas let me know.

  • How do I insert multiple rows from a single form ...

    How do I insert multiple rows from a single form?
    This form is organised by a table. (just as in an excel format)
    I have 20 items on a form each row item has five field
    +++++++++++ FORM AREA+++++++++++++++++++++++++++++++++++++++++++++++++++++
    +Product| qty In | Qty Out | Balance | Date +
    +------------------------------------------------------------------------+
    +Item1 | textbox1 | textbox2 | textbox3 | date +
    + |value = $qty_in1|value= &qty_out1|value=$balance1|value=$date1 +
    +------------------------------------------------------------------------+
    +Item 2 | textbox1 | textbox2 | textbox4 | date +
    + |value = $qty_in2|value= $qty_out1|value=$balance2|value=$date2 +
    +------------------------------------------------------------------------+
    + Item3 | textbox1 | textbox2 | textbox3 | date +
    +------------------------------------------------------------------------+
    + contd | | | +
    +------------------------------------------------------------------------+
    + item20| | | | +
    +------------------------------------------------------------------------+
    + + + SUBMIT + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    Database Structure
    +++++++++++++++++
    + Stock_tabe +
    +---------------+
    + refid +
    +---------------+
    + item +
    +---------------+
    + Qty In +
    +---------------+
    + Qty Out +
    +---------------+
    + Balance +
    +---------------+
    + Date +
    +++++++++++++++++
    Let's say for example user have to the use the form to enter all 10 items or few like 5 on their stock form into 4 different textbox field each lines of your form, however these items go into a "Stock_table" under Single insert transaction query when submit button is pressed.
    Please anyone help me out, on how to get this concept started.

    Hello,
    I have a way to do this, but it would take some hand coding on your part. If you feel comfortable hand writing php code and doing manual database calls, specificaly database INSERT calls you should be fine.
    Create a custom form using the ADDT Custom Form Wizard that has all the rows and fields you need. This may take a bit if you are adding the ability for up to 20 rows, as per your diagram of the form area. The nice thing about using ADDT to create the form is that you can setup the form validation at the same time. Leave the last step in the Custom Form Wizard blank. You can add a custom database call here, but I would leave it blank.
    Next, under ADDT's Forms Server Behaviors, select Custom Trigger. At the Basic tab, you enter your custom php code that will be executed. Here you are going to want to put your code that will check if a value has been entered in the form and then do a database INSERT operation on the Stock_table with that row. The advanced tab lets you set the order of operations and the name of the Custom Trigger. By default, it is set to AFTER. This means that the Custom Trigger will get executed AFTER the form data is processed by the Custom Form Transaction.
    I usually just enter TEST into the "Basic" tab of the Custom Trigger. Then set my order of operations in the "Advanced" tab and close the Custom Trigger. Then I go to the code view for that page in Dreamweaver and find the Custom Trigger function and edit the code manually. It's much easier this way because the Custom Trigger wizard does not show you formatting on the code, and you don't have to keep opening the Wizard to edit and test your code.
    Your going to have to have the Custom Trigger fuction do a test on the submitted form data. If data is present, then INSERT into database. Here's a basic example of what you need to do:
    In your code view, the Custom Trigger will look something like this:
    function Trigger_Custom(&$tNG) {
    if($tNG->getColumnValue("Item_1")) {
    $item1 = $tNG->getColumnValue("Item_1");
    $textbox1_1 = $tNG->getColumnValue("Textbox_1");
    $textbox1_2 = $tNG->getColumnValue("Textbox_2");
    $textbox1_3 = $tNG->getColumnValue("Textbox_3");
    $date1 = $tNG->getColumnValue("Textbox_3");
    $queryAdd = "INSERT INTO Stock_table
    (item, Qty_In, Qty_Out, Balance, Date) VALUES($item1, $textbox1_1, $textbox1_2, $textbox1_3, $date1)"
    $result = mysql_query($queryAdd) or die(mysql_error());
    This code checks to see if the form input field named Item_1 is set. If so, then get the rest of the values for the first item and insert them into the database. You would need to do this for each row in your form. So the if you let the customer add 20 rows, you would need to check 20 times to see if the data is there or write the code so that it stops once it encounters an empty Item field. To exit a Custom Trigger, you can return NULL; and it will jump out of the function. You can also throw custom error message out of triggers, but this post is already way to long to get into that.
    $tNG->getColumnValue("Item_1") is used to retrieve the value that was set by the form input field named Item_1. This field is named by the Custom Form Wizard when you create your form. You can see what all the input filed names are by looking in the code view for something like:
    // Add columns
    $customTransaction->addColumn("Item_1", "STRING_TYPE", "POST", "Item_1");
    There will be one for each field you created with the Custom Form Wizard.
    Unfortunately, I don't have an easy way to do what you need. Maybe there is a way, but since none of the experts have responded, I thought I would point you in a direction. You should read all you can about Custom Triggers in the ADDT documentation/help pdf to give you more detailed information about how Custom Triggers work.
    Hope this helps.
    Shane

  • MessageTransformBean - SimplePlain2XML - Multiple records on a single line

    Hi,
    I am trying to convert multiple record from a single line to multipe rows in an XML message with the MessageTransformBean.
    If the record look like this it's working:
    RECORD1textETC
    RECORD2textETC
    But the incoming message are all on a single line:
    RECORD1textETCRECORD2textETC
    Is there a way to add a linefeed to my incoming message after X characters, or to tell the adapter to split by length instead of spliting on the end of line?
    Thanks,
    Martin

    I had to code a custom Module Adapter to do it.
    Here's the main part of the module adapter EOLConvertBean...
    Message msg = (Message) inputModuleData.getPrincipalData();
    XMLPayload xmlpayload = msg.getDocument();
    byte[] content = xmlpayload.getContent();
    byte crlf = 0x0A; // end of line char
    int current = 0;  // current bytes read     
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    int lines = content.length / recordLen; // record len = insert EOL after X recordLen
    // TODO change for do while for 1x line record
    for (int i = 0; i <= lines; i++) {
         baos.write(content, current, recordLen);
         baos.write(crlf);
         current += recordLen;
    xmlpayload.setContent(baos.toByteArray());
    inputModuleData.setPrincipalData(msg);
    Edited by: Martin Lavoie Rousseau on Oct 6, 2010 9:08 PM

  • How to display the multiple rows in a single column ?

    Hi,
    I have the Query like this :
    SELECT MS.SUBJECT, MS.MESSAGEDESC, MS.MSGDATE, MAT.ATTACHMENT
    FROM MESSAGES MS, MSESAGEATTACHEMTASSO MAA, (select pga.programid,
    act.accountname,
    row_number() over(partition by pga.programid order by act.accountname) rn
    from accounttypes act, programpursesasso pga
    where act.accounttypeid = pga.accounttypeid ) MSGATTACHMENTS
    WHERE MS.MESSAGEID = MAA.MESSAGEID
    AND MAA.MSGATTACHMENTID = MAT.MSGATTACHMENTID
    AND MS.MESSAGEID = 1;
    If i have multiple messageAttachments for single message ., i want to display them in a single row.,
    like :
    subject messagedesc msgdate attachment1 attachment2 .....attachmentn
    test test 10/10/2007 test test test
    can any one help me out ., how can i do this using simple sql query ?

    Hi,
    Thanks for the Reply .,
    I have the 2 table like :
    DESC MESSAGES;
    Name Type Nullable Default Comments
    MESSAGEID NUMBER(16)
    EMAILFROM VARCHAR2(50) Y
    EMAILTO VARCHAR2(50) Y
    SUBJECT VARCHAR2(500) Y
    MESSAGEDESC VARCHAR2(2000) Y
    MSGDATE DATE Y
    MSGSTATUS NUMBER(1) Y
    MSGDELETESTATUS NUMBER(1) Y
    SQL> DESC MESSAGES;
    Name Type Nullable Default Comments
    MESSAGEID NUMBER(16)
    EMAILFROM VARCHAR2(50) Y
    EMAILTO VARCHAR2(50) Y
    SUBJECT VARCHAR2(500) Y
    MESSAGEDESC VARCHAR2(2000) Y
    MSGDATE DATE Y
    MSGSTATUS NUMBER(1) Y
    MSGDELETESTATUS NUMBER(1) Y
    SQL> DESC MSGATTACHMENTS;
    Name Type Nullable Default Comments
    MSGATTACHMENTID NUMBER(16)
    ATTACHMENT CLOB
    ATTACHMENTDATE DATE Y
    SQL> DESC MSESAGEATTACHEMTASSO;
    Name Type Nullable Default Comments
    MSGATTCHID NUMBER(16)
    MESSAGEID NUMBER(16) Y
    MSGATTACHMENTID NUMBER(16) Y
    What I need Is :
    If One Msg is having multiple attachement , then i want to display all the attachment in a single row along with MsgSubject, MsgDate, MsgDesc like
    I want to dipaly the MsgSubject, MsgDesc, MsgDate, Attachment1
    MsgSubject MsgDate Msgdesc Attachment1 Attachment2 Attachment3 ...etc

  • How to put multiple classes in a single file?

    Hello,
    I'd like to put mutliple classes in a single file. (This
    would be useful for grouping children that are minor extensions of
    parent classes or helper classes that are used by one class only).
    When I tried to put two classes in one file, I got this error
    message:
    5006: An ActionScript file can not have more than one
    externally visible definition: Notation.editField,
    Notation.labelField1
    This is the structure I used. Thanks in advance for your
    help.

    You can declare multiple classes in a single file, but only
    one can be
    within the package declaration. All class declarations
    outside the package
    are invisible to code outside the file.
    package sample
    public class SampleClass
    class SampleClassHelper
    class SampleClassHelper2

  • Multiple asset numbers in Single PR/ PO line item

    Hello,
    If we enter multiple Asset Numbers in single PR/ PO line item then we get following error message while doing GR  -
    ' Entry 7100000256 00001  not in table XACCOUNTING (system error) '
    Message no. M7000
    For this PO, in account assignment we have selected 'Distribution' as 'Distribution on quantity basis' and 'Partial Inv' as 'Distribute to following row'
    In case of procurement of materials like chair, we are procuring few hundred materials and for each chair we are creating one asset number.
    Please help to resolve.
    Regards,
    Milind Dumbre
    Edited by: Milind Dumbre on Feb 2, 2011 3:24 PM

    Hello,
    Check these  SAP notes 1386249, 1550451 is relevant for you. These  notes are applicable for your system. these notes are non industry specific.
    You can try these note , i think your problem may get resolve.
    Regards
    Mahesh Naik

  • Is there a way to combine multiple pages into a single document?

    In the program "Pages," is there a way to combine multiple pages in a single document?

    Jean Louis Gassee, who used to be a senior Apple executive, wrote on Apple's bad approach to the latest iWork suite:
    https://discussions.apple.com/message/25209121#25209121
    Peter

Maybe you are looking for

  • Removing video information before playing a movie [ipad 2]

    Hi, The reason I am here at the forum is because I find the video information showing up everytime I select a movie to watch very annoying and wanted to find a way to remove it and make video playing instantaneous. I got used to my iphone playing vid

  • HANA view as source in Data Services

    Hi Gurus, I have a data flow in Data Services where an attribute view is used as source. That is data flow is running fine as of now. As per an updated requirement, we have added couple of fields to the view additionally and have to use them in our d

  • Challenging one Regarding layouts in Report

    Dear all,    I am developing a report using function modules.Here in my report i want a feature of VA05.In VA05 if we goto <b>SETTINGS->LAYOUT->CHOOSE</b>.It will allow us to select a layout. If we select <b>header level</b> layout it will display al

  • Is there a way to abort a processing thread

    Straight forward question... How do I handle timeouts for server-side script execution in a web server? Let's say I have a very simple server that only handles one request at a time... A request arrives for a webpage including a piece of some server-

  • Pivot Graph

    How do i create a graph similar to pivot table. I have data Location, Week_No, Amount A 01 10000 B 01 12020 C 01 10000 A 02 20300 B 02 15000 C 02 15400 A 03 10000 B 03 12020 C 03 10000 I need to display a line graph as 'Location' will be the line, 'w