Execute two synchronous mappings in BPM

Dear All,
i ahve the the follwing sceanrio to be execute in BPM.
My requirement is to execute two synchornous mappings which has one source structure coming in file format
i have mappe this message type with bothe the target messag etypes.
first mapping uses the synchronous webservice..once this webservice is execute it return the response,,now depending on the reponse of the webservice my sencond mapping i.e synchronous Jdbc mapping which will select a record from ORACLE has to execute and then the selected record has to be passed back to file system.
My scenaris is 1 file source xml to 2 synchronous mappings .these amppings shoul execute ina sequesnce
file(one source xml)-->sync Webservice mapping(returns success) and
same file(one source xml)-->sync jdbc mapping(execute depending on the success response from Webservice)
i configured   receive sync->send sync(webservice syn interface)->switch(check success response from webservice)->sendsync(jdbc sync)->send response from jdbc(close s/a bridge).
I am wondering how will the data from one source XML will flow into two mapping interfaces?
do i need to change any steps in BPM.
please suggest
what will be the correct steps i need to configure in BPM
Edited by: Rohan Patil on Jun 29, 2010 3:03 PM
Edited by: Rohan Patil on Jun 29, 2010 3:05 PM

Thanks Shabarish,
i designed the same steps in IP...it worked on the very first shot ...
i waqs thinking i might get some erros but both the mappings got executed in a sequnece successfully..
Thanks for your help.

Similar Messages

  • Two Message Mappings in one Interface Mapping without using BPM

    Hello Experts,
    I have this scenario, please help me
    I have to execute two mappings of which one is a java mapping and then the other is a message mapping sequentially.
    The mapping is something like below
    Message1  -> (java Mapping) -> Message2
    Message2
    Message1 -> (Message Mapping) -> Message3
    Based on the value in Message2 I have to map Message1 to Message3
    I am not an expert in java so please give me options that doesn't involve changing of java code.
    The above 2 mappings have to be implemented in only one interface mapping.
    Suggestions please.

    Hi Ravi!
    You say message2 dependes on message1 and message3 is mapped from message1 but using also values from message2? But this means, that whole mapping dependes only on message1!
    So change your mapping and use the one not based on message2, but message1. Put these as a condition in interface determination and based on these values use the correct mapping.
    Peter
    p.s. I'm not sure, if I got your requirement correctly, but your target message dependes only on message1 (since message2 dependes on it too), so this whole mapping can be done as 1. Unfortunately, you'll probably have to change your java part. Bur definetely, Raj is right.
    Edited by: Peter Jarunek on Feb 20, 2008 5:36 PM

  • Synchronous transmission without BPM process

    Right now I have a S/A bridge BPM process for HTTP => XI => RFC interface.
    However this is taking 5 - 8 seconds to process. On further analysing this process, we found out that WF engine is taking 4 seconds in initialize.
    Can I accomplish a synchronous interface without a BPM?

    Hi Parimala,
    If it just a HTTP>XI>RFC Scenario, it can be achieved without a BPM.
    Steps in IR
    1) Create DT,MT and MI(both request and response)for HTTP interface
    2) Import metadata for RFC Interface into "Import Objects"
    3) Create two Message Mappings
        1) HTTP REq-->RFCREQ
        2) RFC Res-->HTTP Res
    4) Create IM for with both REq and RES maps
    Steps in ID
    1) Create HTTP Business Service. As HTTP Adapter is a built in adapter no CC needed.
    2) Add the BS for R/3 and create the Receiver CC for RFC Adapter
    3)Create Routing Rules using RD,ID,RA with Receiver CC
    Use HTTP Client App to test this.
    Hope this helps.
    Rgds,
    Sam Raju

  • View Mapping Result between two Interface Mappings in ccBPM

    Hello,
    I've got a ccBPM which does two interface mappings. The second one fails. When I redo the steps manually in the Interface Mapping test mode everything works fine. Anyway, I want to get the message from the failed BPM that got out of the first interface mapping, which worked fine in the BPM as well, before entering the second.
    Where can I get that message? In Monitoring I can only find messages that got sent.
    Thanks for you help!
    Regards,
    Dirk

    Hi,
    Please check in Runtime Workbench.
    Go to Adapter Engine --> Component Monitoring
    Now select your Adapter.
    Use Filter and below you will find message ids.
    select one and you can see the audit log..where your appln fails.
    You can also use SXMB_MONI.
    Select the message giving error and in that goto outbound tab..click on link...select view details image button...select the component with error and go to container tab of it....there you will find trace entry....where log of your error will be stored..
    Hope it helps.
    Best Of Luck
    Akhil
    Edited by: Akhil Rastogi on Mar 18, 2008 11:08 AM

  • How to use one commandButton to execute two tasks in JSF

    I have a form in JSF page which contains different faces components. These faces bind to ADF BC to insert one row in the database when the user press commandButton. Also I need to bind the value of one inputText in that form to managed bean to execute another task in the application when the user press the same commandButton.
    The code of the inputText:
    <h:inputText value="#{bindings.ProjectNumber.inputValue}"
    id="pn"
    size="10"
    required="#{bindings.ProjectNumber.mandatory}">
    The code of commandButton:
    <h:commandButton actionListener="#{bindings.Commit.execute}"
    value="Save"
    disabled="#{bindings.Commit.actionEnabled}"/>
    The managed bean is �findInspector�. I tried to insert inputHidden inside commandButton tag and assign the value of the inputText to the inputHidden as follows:
    <h:commandButton actionListener="#{bindings.Commit.execute}"
    value="Save"
    disabled="#{bindings.Commit.actionEnabled}">
    <h:inputHidden value="#{bindings.ProjectNumber.inputValue}" binding="#{findInspector.project}"/>
    </h:commandButton>
    But it was not work
    Please how can I write the code to use the value of the inputText more than one time in the JSF(one to insert one row by using ADF BC and another to use the same value to bind to a managed bean) and how to use one commandButton to execute two tasks in JSF.
    Thank you
    Waheed

    Just dopublic void execute() {
        anotherAction(inputValue);
    I guess those articles might be interesting about passing params and the usage of inputHidden and also about using datatables:
    http://balusc.xs4all.nl/srv/dev-jep-com.html
    http://balusc.xs4all.nl/srv/dev-jep-dat.html

  • How to use one commandButton  to execute two task in JSF

    I have a form in JSF page which contains different faces components. These faces bind to ADF BC to insert one row in the database when the user press commandButton. Also I need to bind the value of one inputText in that form to managed bean to execute another task in the application when the user press the same commandButton.
    The code of the inputText:
    <h:inputText value="#{bindings.ProjectNumber.inputValue}"
    id="pn"
    size="10"
    required="#{bindings.ProjectNumber.mandatory}">
    The code of commandButton:
    <h:commandButton actionListener="#{bindings.Commit.execute}"
    value="Save"
    disabled="#{bindings.Commit.actionEnabled}"/>
    The managed bean is “findInspector”. I tried to insert inputHidden inside commandButton tag and assign the value of the inputText to the inputHidden as follows:
    <h:commandButton actionListener="#{bindings.Commit.execute}"
    value="Save"
    disabled="#{bindings.Commit.actionEnabled}">
    <h:inputHidden value="#{bindings.ProjectNumber.inputValue}" binding="#{findInspector.project}"/>
    </h:commandButton>
    But it was not work
    Please how can I write the code to use the value of the inputText more than one time in the JSF(one to insert one row by using ADF BC and another to use the same value to bind to a managed bean) and how to use one commandButton to execute two task in JSF.
    Thank you
    Waheed

    Yes I did
    <managed-bean>
    <description>The bean for get project No</description>
    <managed-bean-name>projectBean</managed-bean-name>
    <managed-bean-class>
    mcscm.model.ProjectBean
    </managed-bean-class>
    <managed-bean-scope>request</managed-bean-scope>
    <managed-property>
    <property-name>bindings</property-name>
    <value>#{bindings}</value>
    </managed-property>
    </managed-bean>
    Also I changed the method in the managed bean as follows:
    public String commandButton_action() {
    FacesContext fctx = FacesContext.getCurrentInstance();
    ValueBinding vb = fctx.getApplication().createValueBinding("#{bindings}");
    DCBindingContainer dcb = (DCBindingContainer) vb.getValue(fctx);
    OperationBinding operation = (OperationBinding) dcb.get("projectNumber");
    operation.execute();
    return null;
    where projectNumber is my method in the java class of the application module "TaskInformationImpl". I made this method to be accessed from outside of ADF BC.
    I just create a sample code for projectNumber method for testing only as:
    public void projectNumber (String data){
    System.out.print(data);
    In the page Pagedef file I added this :
    <methodAction id="projectNumber"
    InstanceName="TaskInformationDataControl.dataProvider"
    DataControl="TaskInformationDataControl"
    MethodName="projectNumber" RequiresUpdateModel="true"
    Action="999" IsViewObjectMethod="false">
    <NamedData NDName="data" NDValue = "#{bindings.ProjectNumber.inputValue}" NDType="java.lang.String"/>
    After I did all of this I get a new error like:
    javax.faces.FacesException: #{projectBean.commandButton_action}: javax.faces.el.EvaluationException: java.lang.ClassCastException: oracle.adfinternal.view.faces.model.binding.FacesCtrlAttrsBinding cannot be cast to oracle.adf.model.OperationBinding
    Is it very difficult to do this in JDeveloper?. yes ADF BC provide me a lot of facilities, but when I want to do a specific task I face a lot of troubles

  • IDoc to soap synchronous scenario with BPM

    Hi,
    I am working on IDoc to soap synchronous scenario using BPM. Here i am facing lot of soap exceptions in my production system. I handled the exceptions. The data getting excuted for the first time, the same data(just changed the description)is giving exceptions for the second time. Please let me know why the exceptions are getting, and different type of exceptions and solutions for the same.(Blog also is fine)
    Thanks & Regards,
    Pragathi.

    The data getting excuted for the first time, the same data(just changed the description)is giving exceptions for the second
    time.
    Ideally you should not get an exception for the same data....can you tell is the description and where are you getting the exception...is it a part of the SOAP message or some object?
    An exception might have occured because the description would be something unacceptable by the target application.
    and different type of exceptions and solutions for the same
    there would be many blogs....your thread would be spammed...better make a search on SDN with exception text that you are getting.
    Regards,
    Abhishek.

  • How to execute two structure type values

    How to execute two structure type values for HWC app in SUP 2,2 ? Added is the screenshot, with the structure and values to be executed. Trying in the preview works fine , but how to process in the application ?

    Thanks Midhun VP i came across result checker , but still checking if there is any work around without result checker. , Will  a HTML view with some Success status work in this scenario .
    Correct me if i am wrong, as per my understanding , Result checkers checks the error code return value from BAPI and shows the respective message.
    If so, what are the Pros and Cons of using Result checker.
    Is it suggested to use Result checker for read only operations applications i,e which does nt involve operations( CUD)

  • Synchronous RFC exception BPM

    Anybody has successfully getting the RFC.exception in a synchronous call via BPM? What i mean, is to get the RFC.exception then use it inside BPM.
    I have already searched the forum, and i think nobody have done it before. Any clue guys??? Thank you very much in advanced....

    Sorry, i still dont get it. Here i will illustrate my problem.
    I got an abstract sync message interface (lets call it: MIAS_RFC) with structure like this:
    1. Output Msg: From RFC
    2. Response Msg: From RFC.response
    3. Fault Message: From RFC.exception
    I use MIAS_RFC in a SEND node in my BPM inside a block with exception handler branch for my RFC exception handling.
    My purpose is to map the RFC.exception to other message interface abstract async inside the exception handler.
    How can i do this? You said earlier that i should create another sync abstract message interface (MIAS) then use it in a mapping...Am i correct? Could you please describe to me more detail (sorry about this ) Thank you so much....

  • Intermediate result between two message mappings

    Hi,
    we have a Scenario with an Interface mapping, which is created from two message mappings. The first one receives the source message and the second one sends the target message.
    I have a trouble with finding the intermediate result between the two message mappings.
    Do you have an idea, where to find it?
    Thank you for your help.

    hi,
    the only way i think to do the same is to have a CCBPM.....
    - here u should have the receive step,transformation step and a send step...
    - and then go to sxmb_moni,then there go into the process engine and see the graphical view.
    - here you will be able to view the intermediate result also clearly.
    -we cannot do the same without a CCBPM because,in the normal method u can only see the source and target results and not the intermediated result as in the case of CCBPM

  • If there are two synchronized methods in one class.

    If there are two synchronized methods in one class then what will be the beheviour of the threads accessing the methods.

    Synchronization is on objects, not methods or classes. A thread, entering a synchronized method, synchronizes on the object on which that method is called. Another thread, attempting to synchronize on that object, will be made to wait until the first thread releases it.

  • Controller method executed two times

    Hi,
    i created one method called :FileLov
    i called this method in PR like:
    am.invokeMethod("FileLov");
    in am i implemet the code :
    public void FileLov() {}
    method is working fine but it is executing two times.
    when each time executes values are inserted into tables , so that table contains duplicate values.
    can any one please help me why this method is invoked two time, how can i resolve this issue.

    once the page is loaded method is executed automatically two times.
    i used if condition but still it is not effected.
    please find the below
    Target URL -- http://xxxxx.corp.xxxxx.com:8988/OA_HTML/runregion.jsp
    13/04/23 14:33:01 Oracle Containers for J2EE 10g (10.1.3.3.0) initialized
    13/04/23 14:33:03 TIME: runregion: initialization [15 ms]
    13/04/23 14:33:05 TIME: runregion: session and transaction creation [1657 ms]
    Apr 23, 2013 2:33:06 PM oracle.adf.share.config.ADFConfigFactory findOrCreateADFConfig
    INFO: oracle.adf.share.config.ADFConfigFactory Reading META-INF/adf-config.xml
    13/04/23 14:33:06 java.lang.IllegalArgumentException: Unknown signal: ALRM
    13/04/23 14:33:06      at sun.misc.Signal.<init>(Signal.java:126)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.AppsDiagnosticsHandler.install(Unknown Source)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.initializeSignalHandler(Unknown Source)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.<clinit>(Unknown Source)
    13/04/23 14:33:06      at java.lang.Class.forName0(Native Method)
    13/04/23 14:33:06      at java.lang.Class.forName(Class.java:242)
    13/04/23 14:33:06      at oracle.jbo.common.java2.JDK2ClassLoader.loadClassForName(JDK2ClassLoader.java:38)
    13/04/23 14:33:06      at oracle.jbo.common.JBOClass.forName(JBOClass.java:164)
    13/04/23 14:33:06      at oracle.jbo.common.JBOClass.findCustomClass(JBOClass.java:177)
    13/04/23 14:33:06      at oracle.jbo.server.ApplicationModuleDefImpl.loadFromXML(ApplicationModuleDefImpl.java:836)
    13/04/23 14:33:06      at oracle.jbo.server.ApplicationModuleDefImpl.loadFromXML(ApplicationModuleDefImpl.java:770)
    13/04/23 14:33:06      at oracle.jbo.server.MetaObjectManager.loadFromXML(MetaObjectManager.java:534)
    13/04/23 14:33:06      at oracle.jbo.mom.DefinitionManager.loadLazyDefinitionObject(DefinitionManager.java:547)
    13/04/23 14:33:06      at oracle.jbo.mom.DefinitionManager.findDefinitionObject(DefinitionManager.java:425)
    13/04/23 14:33:06      at oracle.jbo.mom.DefinitionManager.findDefinitionObject(DefinitionManager.java:358)
    13/04/23 14:33:06      at oracle.jbo.mom.DefinitionManager.findDefinitionObject(DefinitionManager.java:340)
    13/04/23 14:33:06      at oracle.jbo.server.MetaObjectManager.findMetaObject(MetaObjectManager.java:700)
    13/04/23 14:33:06      at oracle.jbo.server.ApplicationModuleDefImpl.findDefObject(ApplicationModuleDefImpl.java:232)
    13/04/23 14:33:06      at oracle.jbo.server.ApplicationModuleImpl.createRootApplicationModule(ApplicationModuleImpl.java:401)
    13/04/23 14:33:06      at oracle.jbo.server.ApplicationModuleHomeImpl.create(ApplicationModuleHomeImpl.java:91)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.webui.OAJSPApplicationRegistry.createStaticAKApplicationModule(Unknown Source)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.webui.OAJSPApplicationRegistry.getStaticAKApplicationModuleSync(Unknown Source)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.webui.OAJSPApplicationRegistry.getStaticAKApplicationModule(Unknown Source)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(Unknown Source)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(Unknown Source)
    13/04/23 14:33:06      at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(Unknown Source)
    13/04/23 14:33:06      at OA.jspService(_OA.java:71)
    13/04/23 14:33:06      at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
    13/04/23 14:33:06      at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
    13/04/23 14:33:06      at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
    13/04/23 14:33:06      at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
    13/04/23 14:33:06      at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    13/04/23 14:33:06      at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
    13/04/23 14:33:06      at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    13/04/23 14:33:06      at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    13/04/23 14:33:06      at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    13/04/23 14:33:06      at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
    13/04/23 14:33:06      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
    13/04/23 14:33:06      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
    13/04/23 14:33:06      at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    13/04/23 14:33:06      at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    13/04/23 14:33:06      at java.lang.Thread.run(Thread.java:595)
    13/04/23 14:33:06 **************************************************************************
    13/04/23 14:33:06 *** WARNING: Oracle BC4J debug build executing - do not use for timing ***
    13/04/23 14:33:06 **************************************************************************
    13/04/23 14:33:10 filelength is 11
    13/04/23 14:33:11 filelength is 11
    here i wrote one printout statement in a method
    it displays two times.

  • Question about executing two loops simultaneously

    Hi,
    I have a problem executing two loops 'simultaneously'.
    Let me first describe what I want:
    I have one loop that contineously acquires data (at 1kHz) and sends feedback
    signals (to the valves at a rate of 50 Hz). On the other hand there's a high
    frequency acquirement (at at least 250 kHz) for a duration of, let say, up
    to 10 secs.
    The high frequency acquirement is not contineous, but it should be executed
    at a time that I want to. It should be executed multiple times also.
    What I have used is a notifier to execute the other loop at a time that I
    want. It's ok when I run the other loop for only 0.5 seconds, but when I do
    it for 10 sec. then the other control loop doens't function anymore. The
    valves stay at the
    same opening position because it doesn't get any feedback
    from this loop.
    How can I fix this problem ?
    Many thanks,
    Chang-Kwon Kang

    Mark,
    thanks for your kind answer.
    I think I get what you mean. I'll try to use DAQ occurence VI.
    Thank you again,
    Chang-Kwon
    "markwysong" wrote in message
    news:[email protected]..
    > Chang-Kwon,
    >
    > I believe that your problem doesn't really lie in the fact that you
    > have two loops, I think it is rooted in how you are doing your data
    > acquisition.
    >
    > First, let me make the assumption that you are using buffered
    > acquisition for your data (you must be to get 250 kHz). When you do
    > your buffered acquisition, are you using DAQ occurrences to see when
    > the buffer is full (or has a specific amount of data in it) before you
    > perform your AI Read?
    >
    > What I'm getting at is when you perform a buffered
    acquisition, you
    > call the AI Read VI to get the data out of the buffer and into
    > LabVIEW. If you ask the AI Read for an amount of data that is not
    > available in the buffer yet, it will consume the "data acquisition"
    > thread until the data IS available. Therefore, any other data
    > acquisition VI's that you are trying to run will be halted until this
    > operation completes.
    >
    > The way to get around this is to use the DAQ occurrence VI. This VI
    > will halt until the amount of data is available in the buffer, but it
    > doesn't consume the data acquisition thread while it is waiting; when
    > it returns that the data is ready, then you can perform your AI Read.
    > This allows you to have more than one data acquisition going on in
    > either one or more loops.
    >
    > Hope you understood that. Let me know if I can help you further.
    >
    > Mark

  • GetNext() of Disassemble Stage is executing two time

    why GetNext() of Disassemble Stage is executing two times ?I checked it in event log.
    Prakash

    GetNext method returns all the messages created out of Disassemple method.
    Returned message it passed to next pipeline stage or message box as configured. GetNext method is called repeatedly as long as it returns some IBaseMessage type. Repeated calls stop only when
    GetNext returns null.
    So, the second call is when the
    GetNext returns null for you.
    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

  • Problems when I have tried execute two consecutive selects

    Hi,
    I am trying to execute two consecutive selects, when the second sql has been executed, it response "Operation failure of ado2xfa. Imposible find the element in the colection that corresponds with the name" (I have translated the message).
    The error happens when I execute the second DB.open
    In the data conection I have selected "text" in the commandType with "select * from t1"
    First I tried to execute both sqls but, if I try to execute just the "select * from t2" in the first sql command I obtain the same error.
    In the data view I have just one db connection linked with table T1, do I need to create one db connection per table?
    For example if I want to connect with 6 different tables I will need 6 different DB connection objects.
    Somebody know what is the problem?
    Thanks
    Rubén
    var DB;
    var record;
    var i;
    DB = xfa.sourceSet.Oracle
    record = xfa.record.Oracle
    try {
    DB.close();
    } catch (e) {}
    DB.resolveNode("#command").query.select.value = 'Select * from T1';
    DB.open();
    DB.first();
    for (i=0;i <= record.nodes.length;i++)
    console.println(record.nodes.item(0).value);
    DB.next();
    DB.close();
    DB.resolveNode("#command").query.select.value = 'Select * from T2';
    DB.open(); <--------LINE THAT PRODUCE THE ERROR---------

    It's because the data connection has been set up to expect the fields returned from T1. When you query T2 different fields are returned and it doesn't know what to do with them so it throws an error. You would need to 2 data connections, 1 for T1 and 1 for T2.
    Chris
    Adobe Enterprise Developer Support

Maybe you are looking for

  • Office Web Apps Server 2013 issue

    Dear All, I am encounter problem when I try to open document from my browser. Prompt message will pop-out when it try to preview a document: "sorry, there was a problem and we can't open this document. If this happens again, try opening the document

  • How do I install an SSD in my Pavilion d7v

    I am getting ready to install a SSD into my PAvilion d7v and would like to ave a good set of instructions.

  • Alerts are not genrating

    hi, I've defined server genrated alerts for tablespace. I have set threashold value for these alerts and fill up tablespace with data. Tablespace size reaches above critical value but server is not genrating any aleart. No aleart relating to this is

  • Buddy Availability Column Not Working

    I bought a MacPro and pulled my Contacts from .Mac. But my Buddy Availability Column in Mail doesn't work. I worked on my MacBook. Both are running 10.5.2. Not sure what changed, but now the MacBook don't display it either. The interesting thing is A

  • HT4623 After updating ios I'm unable to connect with safari, server unavailable; what should I do next

    After updating ios I'm unable to connect with safari, server unavailable what do I do now?