Video Screencast Help

Wait On External Event Component - Never Polls the wait model

Created: 08 Feb 2013 | 3 comments

I have created a new workflow of type Webservice (but not a descision only project). I am trying to use the "Wait on External Event Component" as per the guide I found here:

However when it comes to testing my Workflow, the debugger runs through the embedded descision model for the start process part of "Wait on External Event Component" however it seems to just end, it never runs the wait embedded model, never times out, in fact it just does nothing. The workflow statistics tab in the debugger shows "1" for current processes though.

The process that's started in the "Start Process" embedded decision model does run, upon hitting the end component the message appears with the a guid and auto closes in 6 seconds. Nothing further happens.

It's worth noting that in my Workflow, the Wait on External Event component is in an embedded model, however I've created a very basic workflow for testing, virtually mimicing the guide above and still run into the same problem, what am I doing wrong?!

Comments 3 CommentsJump to latest comment

rhamner's picture

It's normal for the project to return the tracking id when it hits a Workflow component, i,e. a component that persists the data and stops the flow. There are few things you can check.

1) What's the 'Time Between Checks' value? If its the default you'll have to wait an hour before something happens.

2) If that's not the problem are you sure the 'Wait Process' would be returning true on the Done property of the End component? You should see the execution of the model in the debugger, although you may have to switch the session which is the drop down box with time in the top right corner of the debugger.

3) In the bottom left pane of the debugger there are 3 tabs. On the Settings tab do you have 'Debug Into Embedded Models' checked

4) Finally, in the same place mentioned above but on the Workflow tab there is a 'Refresh Now' button. This kicks off the timeouts and escalations process manually. Try running it.

DanGordon's picture

I've just had a similar problem and found the solution posted here worked for me.

It does seem that only a local account in the Administrators group will work - I tried a domain account and it was still broken, but now at least the wait model is processing (along with all the other escalations and timeouts!).

rhamner's picture

That should do it if your workflow is using windows authentication. The Workflow Service calls into each workflow to 'wake them up'  and make sure the Timeouts and Escalations processing thread is running. If it can't reach it because of authentication then it won't work. A good test to check for this problem is to browse to your project on the Workflow Server machine using localhost like: http://localhost/MyProject/MyService.asmx. Click on CheckTimeoutsAndEscalations then click Invoke. If it works then this is likely the problem. If not then something else is going on.