<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    Failure in ignaling a state in a process which has timer
</h3>
<span style="margin-bottom: 10px;">
    reply from <a href="http://community.jboss.org/people/soheildowlatshahi">Soheil Dowlatshahi</a> in <i>jBPM</i> - <a href="http://community.jboss.org/message/553192#553192">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p>Dear <a class="jive-link-profile-small" href="http://community.jboss.org/people/swiderski.maciej">Maciej Swiderski</a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I have changed my code as you had suggested alreay and I tried to signal the execution Id of the wait state activity instead of signaling the process itself and it didn't throw any exception. At first it seams that it works but later I have noticied that the no transtion in wait state is traveresed and the state of the process isn't changed.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>you can see part of my process definition here:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><span style="font-family: terminal,monaco;">&lt;state name="<strong>activity.investor.registeration.inquiry.suspend</strong>" &gt;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;transition name="investor.inquiry.replied" to="activity.investor.registeration.inquiry.evaluate"/&gt;<br/></span></p><p><span style="font-family: terminal,monaco;"><br/></span></p><p><span style="font-family: terminal,monaco;"><br/></span></p><p><span style="font-family: terminal,monaco;">&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;transition name="investor.inquiry.timeout" to="activity.investor.registeration.inquiry.check"&gt;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;timer duedate="50 minutes" /&gt;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;/transition&gt;<br/>&#160;&#160;&#160; &lt;/state&gt;</span></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>and here is my code for signaling the above mentioned wait state:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><span style="font-family: courier new,courier;">processInstance = executionService.findProcessInstanceById(processId);<br/></span></p><p><span style="font-family: courier new,courier;">// it is not null and have a value<br/></span></p><p><span style="font-family: courier new,courier;"><br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (processInstance != null) {<br/></span></p><p><span style="font-family: courier new,courier;"><br/></span></p><p><span style="font-family: courier new,courier;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; String executionId = processInstance.findActiveExecutionIn("<strong>activity.investor.registeration.inquiry.suspend</strong>").getId();</span></p><p><span style="font-family: courier new,courier;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br/></span></p><p><span style="font-family: courier new,courier;">// the executionId is also not null and have the value.<br/></span></p><p><span style="font-family: courier new,courier;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (executionId != null) {<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; executionService.signalExecutionById(executionId, getProcessVariables(parameters));<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }<br/></span></p><p><span style="font-family: courier new,courier;"><br/></span></p><p><span style="font-family: courier new,courier;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; log.info("signal process state succeed!");</span></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><span style="font-family: courier new,courier;">Neither </span><strong>investor.inquiry.replied</strong> nor <strong>investor.inquiry.timeout</strong> is not called and traversed by the workflow engine and the process remains again at "activity.investor.registeration.inquiry.suspend" state.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I should again notified that if there is not a timer in the wait state , on can signal it by the following code without any problem and it works:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><span style="font-family: courier new,courier;">executionService.signalExecutionById(processId, getProcessVariables(parameters));</span></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>But if there is timer in the wait state activity (like one that mentioned aboved) the calling of this method causes an exception and the message of due to this error&#160; that the current status of the process is <strong>inactive-scope</strong>.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Thanks</p><p>Soheil</p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Reply to this message by <a href="http://community.jboss.org/message/553192#553192">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in jBPM at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034">Community</a></p>
</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>