Start a new process from a running process BPM 10.3 STUDIO!

Is it possible to create a process in BPM Studio 10.3 from a running process.
The scenario is that we have a process running listening to a jms queue an when a message
arrives it's starts the process that was requested in the in message.
/Getr

if you have a Global Automatic activity listening to a JMS queue, here's how you can create a new work item instance in a process using logic in the Global Automatic activity's method. This uses the "Fuego.Lib.ProcessInstance.create()" method shown below:
// "args" is an associative string array (Any[String])
argsIn as Any[String]
// this assumes that the Begin activity has two argument variables
//   named "nameArg" and "amountArg" and you're setting them
//   to the variables "name" and "amount" respectively
argsIn["someArgVarName"] = "Hello"
argsIn["someBpmObject"] = myBpmObject
// logic here to determine the name of the process to create an instance in
idOfProcess as String
idOfProcess = <hard coded string that has the id (not the name of the process to instantiate>
ProcessInstance.create(processId : "/" + idOfProcess, arguments : argsIn, argumentsSetName : "BeginIn") ProcessInstance is in the Catalog inside Fuego.Lib.
The processId parameter (the "idOfProcess" variable in the above logic) is the thing I most commonly screw up with this. It is the text you see when you right mouse click the process in the Project Navigator tab -> "Properties". Look at the value in the "Id" field and not the "Name" field here (the name without any space characters). Prefix it with a "/" as is shown here and if you've deployed this using an organization unit (OU) then prefix this to the string also.
The third parameter is almost always "BeginIn". Begin activities in a process can have many incoming argument mappings, the default is "BeginIn". To see yours, double click the process's Begin activity and look at the mapping's name in the upper left corner of the dialog.
"argsIn" is the set of incoming argument variables you want passed into the process. A common mistake is to type in the names of the incoming argument variables without the double quotes like this:
// this will *NOT* work
argsIn[someArgVarName] = "Hello"
argsIn[someBpmObject] = myBpmObject
. . .Here is the correct syntax:
// this *WILL* work
argsIn["someArgVarName"] = "Hello"
argsIn["someBpmObject"] = myBpmObject
. . .In this example, the process has two argument variables. It does not matter if the incoming argument variables are primitive type arguments (e.g. String, Integer, Decimal...) or BPM Objects, it is always done the same way. In this example, there is a String incoming argument called "someArgVarName" and a BPM Object incoming argument called "someBpmObject".
Dan

Similar Messages

  • Error while invoking ESB process from a BPEL process

    Hi all
    We have a requirement to call an ESB process from a BPEL process. We are using an adapter wth the ESB's WSDL url. After deploying the BPEL process, the registered ESB is getting called for most values while suddenly some values return the followign error
    *"exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: Connection reset"*
    The catch here is, if we re-run the process with the same values again, the ESB is called successfully! How is it possible for a process to error out and run normally for the same inputs ?
    What could be the possible fix for this? I am thankful for any inputs on this.
    Vijay

    Hi Vijay,
    This is a bug and you can refer the metalink note:
    "Applying Patch 7445876 Results in Error "java.lang.NullPointerException". [ID 942575.1]" for reference.
    Also you can refer the following link:
    "http://puchaanirudh.blogspot.com/2008/12/exception-on-jaxrpc-invoke-http.html" also.
    Thanks,
    Vishwanath.

  • Invoking an async  process from an async process

    I want to invoke an asynchronous process from an asynchronous process. My caller process has has a initiator task, a   message throw and catch event while called process has a start catch message  event and throw message as end event . If any one of you can provide a  sample or reference, it will be of great help.  I am have problem in configuring  end throw message  event .

    Where exactly do you have problems. When you use the async template you do not really have to configure anything - just define your input / putput data. This blogpost here describes how you can call an async BPEL from an async BPMN process: Oracle-FMW: Calling Async BPEL process from BPM.
    Danilo

  • Invoking bpel process from another bpel process in same app server

    Hi,
    When I invoke a bpel process from another bpel process in the same oracle AS
    1. Is it a SOAP call or is there any optimization?
    2. If there is some optimization where can I configure this?
    3. Is there any similar optimizations if I invoke a bpel process from a
    java application deployed in the same server? If so can you please provide
    a sample?
    Thanks for your help
    Raj

    By default the BPEL 10.1.2, it will do a local call to the process. It will not execute a SOAP request, no network access is done.
    It can be configured at domain level:
    Parameter: optSoapShortcut (SOAP local optimization)
    Turns on "short-cut" for local SOAP request; local SOAP calls are normally done via an internal call instead of sending a message through the SOAP stack.
    The default behavior for the engine is to optimize all. To disable optimization specify a value other than "true" or "yes".

  • Can I use my email and phone number to start a new conversation from iMessage?

    Can I use my email and phone number to start a new conversation from iMessage?

    Can I use my email and phone number to start a new conversation from iMessage?

  • Killing a Java process from another Java process

    Hi
    Is there a possible way of sending a SIGINT, SIGKILL, or any other signal from a Java process running in one JVM, to a java process running in a different JVM on the same machine.
    I've the signal handlers written in my process and they do respond to singals (e.g. on pressing Ctrl-C) on the console, but i want to write a separate program that sends this signal to the first process.
    Any ideas?
    Thanks in advance and regards
    Kashif

    The answer, as always, is that Java can't do operating-system-specific things like that, but you can use JNI to do it. However, if your code created the Java process you want to kill, via Process p = Runtime.getRuntime().exec(...), then you can use p.destroy() to kill it.

  • Problem with AND process in daily running process chain

    Dear Friends,
    I am currently I am facing problem with AND process. In my daily running process chain, daily the process chain is failing at AND process. Currently I am workaround and manually repairing the AND process and loading the data with below (link) steps.
    /people/siegfried.szameitat/blog/2006/02/26/restarting-processchains
    I need permanent solution for this reoccurring problem. Kindly share your thoughts and ideas to resolve this problem.

    Hi,
    The below are the job log. After this the batch job is failing.
    Job log overview for job:  BI_PROCESS_AND
    Job started
    Step 001 started (program RSPROCESS, variant &0000000190315, user ID MAESTRO)
    This AND process is not waiting for event RSPROCESS, parameter 475P4YTXTIIOA6IQ9GAZVEP24
    Job cancelled after system exception ERROR_MESSAGE

  • Start a new thread from JSP ???

    suppose my JSP code is like this,
    <%
    Obj.heavyProcess();
    %>
    How can I start a new thread to do
    out.println(" ");
    out.flush("");
    while the heavyProcess is going on? I need to do this because my ISP will cut any Idle connection after certain time and my heavyProcess takes a long time to finish.
    for certain reasons, I can not do waiting page, refreshing, etc.

    The same way as you would from a normal java application. Write your thread class
    package com.yourpkg;
    public class YourHeavyProcess implements Runnable{
       private YourObject obj;
       public YourHeavyProcess(YourObject obj){
                this.obj = obj;
       public void run(){
           obj.heavyProcess();
    }and create and invoke this thread from your jsp.
    <%
            YourObject obj = new YourObject();
            Thread t = new Thread(new YourHeavyProcess(obj));
            t.start();
    %>
    out.println()..;
    out.flush()....;Note that the thread cannot write anything to the output stream as the response is over and done with. It can only perform backend tasks (like data archival for instance)
    You could consider using a Timer and a TimerTask class which provides a slightly higher abstraction layer over threads . Look at [url http://forum.java.sun.com/thread.jspa?threadID=758874]this  post (reply 48) for an example.
    And finally you wouldnt want a large number of threads to be generated and competing for cpu time on your web server (whose primary responsibility is to receive http requests and send responses). You can use a thread pool to manage the number of threads spawned by your application. If you use java5, take a look at the [url http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/Executors.html]java.util.concurrent.Executor class for thread pool implementations that you can use off the shelf.
    cheers,
    ram.

  • Timeout error calling a Business Process from another Business Process

    Hi to all,
    How can I call a Business Process (BP2) from another Business Process (BP1) and wait for the response before other things are performed? I'm trying to call from BP1 in a synchronous step the process BP2; the first step of BP2 is an Open S/A Bridge and, after a transformation, a Close S/A Bridge, but no response returns to BP1 till a timeout error.
    Thank you very much,
    Antonio

    I did some changes and the error now I am getting is,
    ===========================================================
    Error : null oracle.jsp.JspServlet.internalService(JspServlet.java:186)oracle.jsp.JspServlet.service(JspServlet.java:156)javax.servlet.http.HttpServlet.service(HttpServlet.java:588)org.apache.jserv.JServConnection.processRequest(JServConnection.java:456)org.apache.jserv.JServConnection.run(JServConnection.java:294)java.lang.Thread.run(Thread.java:534)
    Error : oa_html._Text__Button__Lat._jspService(_Text__Button__Lat.java:712)oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:417)oracle.jsp.JspServlet.doDispatch(JspServlet.java:267)oracle.jsp.JspServlet.internalService(JspServlet.java:186)
    ============================================================
    Does the middle tier need to be bounced?
    Thanks

  • Calling a bpel process from other Bpel process

    hi,
    my req is
    i have created BPEL process where getting the list of customers by giving the partial name using DBAdapter...... getting the output from the Invoker and the output is assinged to a assing activity(thru copy operations) from assign to replyoutput.
    for example from partial output (eg: input---name=Wor%)
    output:
    World of Business
    World of Concrete
    Worldwide Communications
    Worldwide Communications-Vision Corporation-2090
    here if i click the 'Worldwide Communications-Vision Corporation-2090' it should show the sub-details of the name sucha as name,address..............
    how to call subdetail process to show the subdetails by cliicking on the name
    the above process done on the front-end

    Hi
    API's are available to call a BPEL process from the front-end.
    you can invoke a BPEL with the required SOAP msg.
    Thanks

  • Invoking JDev bpel process from Eclipse BPEL Process?

    Is it possible to invoke a bpel process (with dbadapter) developed in JDev from a bpel process created in Eclipse (Designer)?

    I was unsuccessful.
    Scenario:
    I was trying to invoke jdev bpel process (that had a database adapter to update the database) from Eclipse bpel process (since we do not have adapters in Eclipse designer).
    The namespace wasn't known by Eclipse( some schema missing?) and therefore we couldn't compile it.

  • How stopping a version and start a new one from the previous

    Hi,
    May be someone could help me to erase my basics questions on Robosource control.
    We have to manage several versions of our product documentation and It is not clear how it is managed by robosource control. The documentation tells what can do RBSC (and it seems to be what we need) but they do not explain how to do it (prerequisites, ordered steps, etc), and I do not really succeeded. May be I missed the basics.
    All our projects are added to Robosource control 3 from RoboHelp7 Html from a local directory.
    In the database, we inserted them in a directory corresponding to a version V01.r01.
    I would like to stop this version and start a new one V01.02 with the projects which are V01.01. What is the best way to do this:
    Do I just label the directory V01.01 and "Pin" it ?  In that way how can I recover all the projects and files that were labelled and pinned for version V01.01, if I need them later ?
    Copy and rename directory V01.01 into V01.02 to continue the file modifications without modifiying the same project in V01.01?
    My questions are quite similar to Kristen's questions.
    Please can anyone help ! Thanks !

    Then the (App) tabs from that window are lost unless you can restore an older copy of the sessionstore.js file (Time Machine?) that has that lost window.
    *http://kb.mozillazine.org/sessionstore.js

  • How to get status of a sub process from the parent process.

    Hi,
    I want to get the status of a subprocess from the parent process (i.e. success or failure).
    How can I get this.
    Thanks in advance.
    Bye

    have a look at the workflow built-in vars:
    WF_ACTION_ERROR and WF_ACTION_RESULT or WF_CASE_RESULT
    WilfredS

  • Is there a way two start a new thread from a BLS to do some background work

    Hi all-
    I am thinking about creative ways to do offline processing...  Our MII app loads a list of current orders for the user's browser.  The user selects an order and requests back to MII for running the SAP transactions.  Then their browser is reloaded with the up to date list again.  When SAP is down they cannot process.
    Certainly a traditional store and forward where all data is loaded to MII and transaction requests are queued up to be processed by MII/SAP in the background is possible. Con: Data synch issues are very complex however.  Pro: It does provide excellent response time to the user.
    I am just noodling about options... 
    >>Is there a way to start a thread that could take the XML output going to the web page and store that in the database in the background?  I.E.  release the data to the irpt and terminate the user's BLS while a background BLS is saving a copy of the XML/orders to the database.
    Then when offline, the user can work from the last current list of orders they had.  When SAP comes back up the system goes back to online operation.  Thus the data sync would only be temporary.  It does not have the response time benefit however.  Maybe some more thinking, ...But I really want to know if there is a way to multi-thread this app.
    Thanks,
    --Amy Smith
    --Haworth

    I assume you're still running 12.0?  12.1 introduces a new action block for transaction calls, which allows for async threads to nested transaction calls.
    I don't know how using query caching would work on the XacuteQuery template for your list of orders - especially when it would attempt to renew the cache when SAP was unavailable.
    An XML file periodically saved to the web tab of your project would also provide you with a cache approach to servicing the user screen - a simple point of abstraction.

  • ITunes 11 Stops Responding to Bonjour Discovery Multicast Broadcasts, Why?  This stops the the Apple TV 3 from being able to start a new stream from the home share and the iPad remote app can no longer see the home share too.

    I'm having an issue where my Apple TV 3 and all our iPads periodically seem to loose connectivity to an iTunes home share on a Windows 7 PC.  Using a network protocol analyser on the PC I have identified that the point of failure corresponds to the ATV3 sending a bonjour discovery request and getting no reply from iTunes.  Why the ATV3 'forgets' where the home share is is possibly another issue but the root cause of the failure is that iTunes, or more specifically the mDNSResponder service, is not responding to the UDP multicast port 5353 broadcast discovery packet sent by the ATV3 or iPad.  The mDNSResponder service does start responding again after iTunes is restarted thus making the home share accessible once more, however, this frequent drop out is unacceptable and often happens after only a single TV show has been watched from the home share making the solution unworkable for a family, we simply cannot be restarting iTunes constantly it ruins the user experience completely!
    The nature of this failure indicates that the ATV3, the iPads, the host PC and network are all working correctly and the point of failure here is the lack of response to the bonjour discovery protocol with the net result of either a spinning 'connecting to home share' message or the home share just disappearing from the computers section.
    If there is a configuration fix for this please let me know as I haven't located a fix!  Otherwise this seems very much to be a code flaw in iTunes 11 or the mDNSResponder and I would appreciate some input from Apple!  Going on other questions in these forums it would seem the problem is not limited to Windows PCs but also Macs too.  NB: This is not a TCP issue, when the ATV3 or iPad knows the IP of the iTunes server all works flawlessly, it just periodically they seem to refresh the list of home shares and at this point they loose the information about the home share they have just been using because of the non-response to the UDP multicast discovery broadcast packet, that is arriving at the host PC and isn't being blocked by the firewall.
    Many Thanks!

    In my case there was no import from a former mac.
    My problem (at least mine) is that no app that offers media sharing works properly. Neither itunes home sharing nor AirVideo nor EyeTV sharing.
    So I'm pretty sure that this is network issue.
    Adding another user on my mac and sharing a new library works not also. But sharing from another laptop in my WiFi works. So this has to be a network issue on my mac, not only my user, but an issue of the whole system.
    But I'm not willing to reinstall MacOS X for that if I don't have to.

Maybe you are looking for