Human Task expiration after server restart

I am having serious problems related to BPEL human task expiration in SOA 11g. If my server is down or if I restart my server and any human task has its expiration during this server downtime, then this human task never exprires. What I want is that any human task should get expired at its expiration date-time irrespective of server state. Please help.

I am having serious problems related to BPEL human task expiration in SOA 11g. If my server is down or if I restart my server and any human task has its expiration during this server downtime, then this human task never exprires. What I want is that any human task should get expired at its expiration date-time irrespective of server state. Please help.

Similar Messages

  • Canceling timers after server restart

    hi,
    i create a couple of timers. while the application server is up i can cancel them by getting the TimerService object of the bean it's associated with, calling getTimers() and cancelling the Timer objects returned from it.
    if i restart the server (let's say it crashed), the timers created in the previous session are back to run - they are persistent by definition. but now i can't cancel them anymore: same getTimers() returns an empty Collection. i think this happens because the old timers from the previous session were not rebound to the new ejbcontext, or something like this.
    my question is: how can i cancel timers, that were re-invoked after server restart.
    thank you.
    Message was edited by:
    cyclid

    Below are my tests that show canceling of timers working as expected:
    Session bean methods:
    public void createTimers()
    {       System.out.println("### CREATE - a single-action timer that expires in 4s");
    ctx.getTimerService().createTimer(4000, "single-action timer that expires in 4s");
    System.out.println("### CREATE - an interval timer that expires in every 2s");
    ctx.getTimerService().createTimer(2000, 2000, "interval timer that expires in every 2s");
    public void cancelAllTimers() {   
         System.out.println("### CANCEL - timers:");     
         for (java.util.Iterator iter = ctx.getTimerService().getTimers().iterator(); iter.hasNext();) {
              Timer timer = (Timer) iter.next();
              System.out.println(" canceling ... " + timer.getInfo());
              timer.cancel();
    public void logCurrentTime() {
         System.out.println("### CURRENT TIME - " + java.util.Calendar.getInstance().getTime());
    public void ejbTimeout(Timer timer)
    {     System.out.println("### EJB TIMEOUT - " + timer.getInfo());       
    Java Client test:
    ejb.cancelAllTimers();
    Thread.sleep(4000);
    ejb.logCurrentTime();
    ejb.createTimers();
    Thread.sleep(8000);
    ejb.cancelAllTimers();
    ejb.logCurrentTime();
    Thread.sleep(8000);
    ejb.logCurrentTime();
    Logs:
    1. Shutdown servers while there is an interval timer
    The log shows the interval timer came back and then was cancel after server restart
    07/02/06 13:46:23 ### CANCEL - timers:
    07/02/06 13:46:27 ### CURRENT TIME - Tue Feb 06 13:46:27 EST 2007
    07/02/06 13:46:27 ### CREATE - a single-action timer that expires in 4s
    07/02/06 13:46:27 ### CREATE - an interval timer that expires in every 2s
    07/02/06 13:46:29 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:46:31 ### EJB TIMEOUT - single-action timer that expires in 4s
    07/02/06 13:46:31 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:46:32 Shutting down OC4J...
    C:\oc4j\10131_061009\j2ee\home>java -jar oc4j.jar
    07/02/06 13:48:12 Oracle Containers for J2EE 10g (10.1.3.1.0) initialized
    07/02/06 13:48:13 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:48:15 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:48:17 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:48:18 ### CANCEL - timers:
    07/02/06 13:48:18 canceling ... interval timer that expires in every 2s
    07/02/06 13:48:22 ### CURRENT TIME - Tue Feb 06 13:48:22 EST 2007
    2. Cancel timers right after they were created
    07/02/06 13:50:11 ### CANCEL - timers:
    07/02/06 13:50:15 ### CURRENT TIME - Tue Feb 06 13:50:15 EST 2007
    07/02/06 13:50:15 ### CREATE - a single-action timer that expires in 4s
    07/02/06 13:50:15 ### CREATE - an interval timer that expires in every 2s
    07/02/06 13:50:17 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:50:19 ### EJB TIMEOUT - single-action timer that expires in 4s
    07/02/06 13:50:19 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:50:21 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:50:23 ### EJB TIMEOUT - interval timer that expires in every 2s
    07/02/06 13:50:23 ### CANCEL - timers:
    07/02/06 13:50:23 canceling ... interval timer that expires in every 2s
    07/02/06 13:50:23 ### CURRENT TIME - Tue Feb 06 13:50:23 EST 2007
    07/02/06 13:50:31 ### CURRENT TIME - Tue Feb 06 13:50:31 EST 2007

  • Human Task Expires Though Task Duration Never Expires in DeadLines Level

    Human Task is expires thogh task Duration Never Expires in DeadLines level
    1)I have Created a Human Task
    2) I am assigning task based on User Input ( If User proivdes BPM ) task will will assigned to 'BPM' Group
    3) In Assignment Advanced leve i have set Limit allocated duration to 5 Min
    4) Dead Line Level I have set Task never Expires
    5) I have created Task , Task is assigned to 'BPM' Group
    6) 'BPMUser1' Acquired task
    7) After few min task get released automatically
    8) Task Expires after 5 Min

    ...and if I only send an email in the "When a Task Expires" step, the "When
    a Task Expires" will get called again and again to remind the original approver.  However, when I reassign the task the When
    a Task Expires"  will never get called again.   stumped.

  • Retaining listening channel password after server restart

    Hi,
    I have configured b2b email listening channel & everytime i restart the soa server, the password is blank.
    Is there a way to retain/store the password after server restart?
    Thanks
    Ganesh

    Hi Anuj,
    I faced the problem with PS2 and now with PS3 also.
    For me in listening channel, it does not store the password & during server startup, it tries to connect to email server & fails with invalid password or some error like that.
    I am going to raise a SR today & will see how that goes.
    Thanks
    Ganesh

  • EJB projects failed after server restart

    Hi Experts,
    I had deployed some Web Dynpro projects and EJB projects. But everytime after server restarts or SDM restarts, the EJB projects will gone. I have to redeploy the EJB projects to make the WDP projects works, or else the WDP projects will hit nullpointer which saying not able to find the specific EJB.
    Any idea?
    Thanks & Regards,
    Sarah

    Thanks
    wawoodwa , this command solved my problem!!! 
    On other sites I found command:
    "Update-MailboxDatabaseCopy –Identity ‘DB2’ –CatalogOnly" it was not working, I got the same error as OldSchoola.

  • JMS Messages lost after server restart

    Hi All,
    We have an environment where Oracle SOA 11g is configured to use Weblogic JMS (Database persistence). The JDBC stores have been created to hold the persistent JMS messages. However we have observed that after server restart the messages are getting lost from the queue (non consumed messages as well).
    Is there any configuration which we are missing?
    Regards
    Subhankar

    Hello Subhankar,
    Which Weblogic version are you using? What are the configuration parameters of the JMS queue you defined? During server shutdown/restart, do you see any errors in the server log?
    I would suggest you to raise a case with support as it may require an inspection of your environment and settings to find out the root cause.
    Regards,
    Anuj

  • Human task notification after due date/expiration date/...

    I would like to set a due date (or expiration date) to Human task, and set some notification before this time. Ok, it seemed very easy:
    - i set due date to 5 minutes in human task -> Deadlines
    - i set notifications in human task -> notification and in tab Advanced i set remind once 2 minutes before due date
    Nothing happens. Exactly same (nothing) happens when i do the same with expiration date.
    But what exactly is meaned under word "Reminder"?
    It's mail? (then where I have to set email adress? I tried to set a "to" field in human task -> notification -> tab Advanced -> notif. header attributes => nothing happened)
    It's worklist inbox message?
    Or what ist "reminder" and how it should remind me?
    Edited by: user1175491 on Dec 28, 2010 7:21 PM

    Hi,
    I don’t know if you’ve managed to resolve this issue yet and you mention you have emails working from BPEL, but I'm not sure if you've got any notifications working for the Human Task, if not then I have done some work with the human task notifications and although I’ve not tried to do what you’re doing, this is what I have learned.
    Firstly to receive any notifications you need to configure the Messaging Driver and Workflow Notification Properties…
    In Enterprise Manager expand [farm] -> SOA -> soa-infra
    Right click soa-infra and choose SOA Administration -> Workflow Notification Properties
    Underneath the page title (Workflow Notification Properties) is a note telling you to configure the Messaging Service Driver. Click the "Go to the Messaging Driver page" link.
    In the associated drivers section you will have a single entry for soa_server1 (or what ever it's called for you). In the right hand column there is a button for configuring the driver, click this.
    In the driver specific configuration, scroll down to OutgoingMailServer and enter the hostname or IP address of your mail server, then click Apply at the top of the screen.
    Now go back to the Workflow Notification Properties screen and choose “Email” from the notification Mode and enter some sensible email addresses in the Notification Service section. It’s useful to have real email addresses in here at the moment because any failures will be returned to this address.
    You now need to restart Weblogic for these changes to take affect.
    After the restart you can test the notifications by doing the following
    Back in Enterprise Manager expand [farm] -> SOA -> soa-infra
    Right click soa-infra and choose Service Engines -> Human Workflow
    Click on the Notification Management tab.
    You can click the "Sent Test Notification" button to make sure everything is working ok. This screen also allows you to monitor notifications for failures.
    Now that the notifications have been set up you can configure who gets notified on which events against your human task in JDeveloper.
    The email addresses for the users are retrieved from your identify provider for the relevant user, by default this is the internal LDAP directory. I’m not using this, so I’m not sure exactly how this will work. There are options in the worklist application for individual users, but I’m not using this either.
    Now that this is set up you can configure the human task within JDeveloper. On the notification tab you can decide who gets notified when. By default when a task is assigned to a user, the assignees are notified, you can play about with these settings to see what works best for you. Have a look at http://download.oracle.com/docs/cd/E12839_01/integration.1111/e10224/bp_workflow.htm#BABBHDGF for more information.
    I’m not sure I’ve solved your problem, but I hope this at least helps.

  • Human Task expiration issue

    Hi,
    I have the following scenario.
    Its a simple BPEL process with string input and string output with a call to Human Task.
    the Human Task has the expiration duration of 5 mins.
    I invoke the process from bpel console and as expected it waits for the human task to respond or expire. during this waiting time I happen to restart the soa server. The server was restarted before the expiration time but still the task did not expire.
    Task still stays with the user assigned and the process is still waiting for the response from the task(which is already passed expire time).
    I am using SOA Suite *10.1.3.4* with a patch set *7714967* applied on top of it.
    I have tried to set the startup recovery also but no help.
    If some body can give me the solution. that would be great.

    I have tried with MLR Patch # 8372150, but no luck. I have found a similar thread on this forum who has the same issue.
    quartz based workflow times are not initializing
    If this might be the problem, how do we fix the following error message.
    *<::> Unable to get the workflow timers during startup, this can happen if orabpel server is not started properly*

  • Human Task expiration containing Task History from another Human Task

    Hi All,
    Let me explain you my complete workflow in brief.
    I have 8 Human Tasks and all are sharing Task history. My each individual Human task are in Scope activity. In my payload I have a variable "strExpiryDuration" and I am setting its value in an Assign activity before my last human task. I have assigned this variable "strExpiryDuration" in the expiry duration of my last human task definition. For the reference I am giving the value as "*P0DT1M*". But it is not expiring my last human task at all. I doubt it may be because task history which I am sharing in my human tasks is overwriting the payload values and thats why the value of strExpiryDuration is not setting up in task definition.
    I checked by assigning the same variable strExpiryDuration to some other value ("*P3DT1M*") and assigning it to my first human task definition. In this case, whenever the workflow is assigned to my last human task it is also showing Expiry date as of after 3 days. What is the issue here? Please help.
    Regards,
    Murtaza
    Email:
    murtaza.ghodawala @ alshaya.com
    Edited by: user8977605 on Apr 21, 2011 6:48 AM

    I have found the solution to this generic problem. Whenever you have a human task sharing task history in your workflow, you need to ensure that the changed/modified payload value is assigned to the human tasks properly. In most of the cases, Task history sharing Human Task will override the payload values with the payload values of the previously executed human task in the workflow.
    For that the fix is as below:
    1. Expand the Human Task.
    2. In the Assign activity, write a copy operation in which copy the changed individual payload variable to the payload variable of the Human task whose task history we are sharing.
    For e.g.
    <copy>
    <from variable="inputVariable"
    part="payload"
    query="/client:TravelRequestProcessRequest/client:ExpiryDays"/>
    <to variable="ApprovalsTask_1_globalVariable"
    part="payload"
    query="/task:task/task:payload//client:TravelRequestProcessRequest/client:ExpiryDays"/>
    </copy>
    3. Make this copy operation as the first operation in the Assign Activity.
    I hope this solution will help you to resolve your issues.
    Regards,
    Murtaza Ghodawala
    Email:
    [email protected]
    Edited by: user8977605 on Apr 24, 2011 12:53 AM

  • Libraries for Human task in managed server

    Hi All,
    We are using SOA Suite 11.1.1.6 for the current project. I have a questions regarding the setup of the managed server for Human Task Flow. For specific reasons, in our domain, we have three managed servers: admin, soa and taskform. The managed domain "taskform" will hold all ear project for human tasks.
    The question is while configuring the domain, which libraries should we install in the "taskform" managed server?
    Thanks in advance.
    Steven

    Hi,
    Have a look at
    http://docs.oracle.com/cd/E21764_01/integration.1111/e10224/bp_designtf.htm
    section 28.8.4 How To Deploy a Task Form to a non-SOA Oracle WebLogic Server
    This is the 11.1.1.5 documentation I am sure there would be an equilivant in your version.
    In theory the URL should be provided by the deployment process but you can check this
    In EM click on the composite with the human task component in it
    Under Component Metrics click on the human task component
    In the Administration tab you should see an entry which is the URI to the task form
    As I said I havn't got this working on our system yet and I would be intrested in hearing if you are sucessful
    Robert

  • Human Task expiration

    Setting the 'Fixed Duration' under 'Expiration and Escalation Policy' of a Human Task does not seem to work. Am I missing something? Where do I set the ExpirationDuration or ExpirationDate for a Human Task?
    Thank you!

    Works ok for me.
    Created dummy bpel with dummy task in it.
    On task creation i added fixed expiration of about 5 mins.
    Start process, and wait 5 mins, and the process continues to completion.
    In the audit trail of the task you will see something like
    <state>EXPIRED</state>

  • Web Service from stateful Session Bean deleted after server restart

    Hi,
    i created a stateful session bean and from this a web service.
    I am able to deploy it and it works really fine.
    My problem is: after a server restart the web service is gone and i
    have to deploy it again.
    I have some other web services (but these are web services from stateless session beans)
    but they "survive" the server restart.
    I don't want to deploy the web service after every server restart, did I forget something or
    is it a general problem of stateful session beans or web services?
    Thanks in advance
    Jens

    Hello Björn,
    I am not quite sure what your problem is but did you have a look at these articles:
    http://help.sap.com/saphelp_nw04/helpdata/en/4d/993441c73cef23e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/be/2e2c4142aef623e10000000a155106/frameset.htm
    I hope they can give you some idea.
    Regads
    Vyara

  • Missing data after server restart

    Hi,
    We restarted our MDM server at the OS level last night. Everything seemed okay after the restart. However, when our users came in this morning, they found that some data was missing from a table. We have a Material repository with 3 main tables. Some data which have previously been populated was not appearing in our Products Detail table, the largest of the three. A large number of rows in the table had columns that failed to load with data on the repository auto-start that occured after the server restart. The auto start value in the mds.ini file was set at 300 (5 minutes) as we had seen this iisue happen once before, and thought that may help.
    A stop and restart of the repository corrected the issue. Is there anything we could have done to prevent this? Is it worthwhile to try increasing the auto start delay again? Validating detail data after every server restart is not an effective option.  
    MDM version: 7.1 SP08
    OS: AIX  DB: Oracle 11g
    Thanks!
    Dave

    Hi Dave,
    I meant that when you load repository using Immediate data is loaded from .acl files (accelerator files) in a async manner.
    Whereas when you load by Update Indices new acl files are generated.
    Below men6tioned is a comparision between the 2 ways of laoding repository:
    Load Repository Immediate
    o Loads indexes from accelerator files instead of being regenerated by reading the data them from the DB and creating the index.
    o Automatically builds indexes stored in out-of-date accelerator files.
    o Is usually fast.
     Load Repository with Update Indices
    o Rebuilds all MDM indexes files by reading and indexing data stored in the DB. The results are flushed on disk as accelerator files.
    o Necessary by repository schema changes or if any error occurs.
    o Might take significant amount of time to complete.
    So when you observe some visual data impact in your repository it is good idea to rebuild indexes.
    I guess we cannot schedule this as default behavior is to load by immediate even through the inin parameter.
    as a best practice one can do this by fixing a time frame eg monthly depending on data/schema changes.
    Thanks,
    Ravi

  • How to avoid BPEL process deployment after server restart

    Hi,
    Message flow in my application is as below
    BPEL1 --> ESB --> BPEL2
    After every server restart the ESB is failing to invoke a perticular operation of BPEL2 service. All other operations of BPEL2 are working fine.
    We are redeploying the BPEL2 proccess everytime the server restart happens to fix this issue. As a temporary fix, we are trying to bypass the ESB and directly invoke BPEL2 from BPEL1, but not sure if this solution works.
    Can someone please suggest me as to how to avoid redeployment of the BPEL2 process?
    Please let me know incase any additional information is required.
    Thanks in advance.
    Regards,
    Manoj
    Edited by: user11290555 on Jun 20, 2010 3:18 PM

    Hi,
    try the SOA forum.  This here is for JDeveloper and ADF related questions
    Frank

  • JNDI - rebind required after server restart

    We are using a third party JMS Provider (we have to use this provider implementation as opposed to WLS Provider), which requires a JNDI implementation. We can use the Sun File JNDI implementation, but seeing as WLS is in the environment, binding the JNDI names into WLS seemed the natural thing to do. This works great, except that we have to bind after each server start up (as the WLS JNDI naming is not persistent across server restart).
    I was wondering if anyone had any 'neat' tricks or ideas around this, aside from startup class.

    JMS has a ForeignJMSProvider config option to do this I believe. 9.0 will also support this more generally.

Maybe you are looking for