<!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;">
    Re: jPBM 5.1, persistent processes get finished without regard to session
</h3>
<span style="margin-bottom: 10px;">
    created by <a href="http://community.jboss.org/people/mnorsic">Miljenko Norsic</a> in <i>jBPM</i> - <a href="http://community.jboss.org/message/628529#628529">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p>Hi Maciej,</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>thanks for the reply! I've checked your statement about environment, and when I set up two different environments, it works OK.</p><p>Unfortunately, it is not that obvious what is the right way to do it, especially taking into consideration that persistent examples are scattered around and not included into JUnit tests (if I'll get some time, I'll try to add it into JUnit tests because I think jBPM deserves much more examples to be more widely accepted in community, because lot of us are struggling with rather incomplete set of samples to build our processes).</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>As for the signalling processes, I didn't realized that processes live separately from their knowledge sessions, because:</p><p>1. process cannot live without its knowledge session (we create a process on a knowledge session, right?)</p><p>2. session handle and process handle are persisted together. It means that when I reach some safe state point in process, upon its wakeup I'm going to receive a deserialized knowledge session instance and its child process instances</p><p>3. I can create many process instances on a same session instance</p><p>4. rules are also first-class citizens in knowledge session, similar to processes, and processes cannot execute without rules (if they use rule tasks).</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>As I see it, process has its parameters only, and the rest is taken from the session. Please correct me if I'm wrong.</p><p>Therefore it is somehow strange to call signalEvent(eventId, param) on a ksession and as a result all process instances are notified, and not only those that belong to that particular knowledge session.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Also, one thing I've spotted and is by my humble opinion not correct, is that when I call</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>processInstance.signalEvent(type, eventData);</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>only that particular process instance is signaled. For example, if this process instance contains a sub-process with that event, signal is not propagated to a child process.</p><p>So, in general, I think more scoping would allow process creators more freedom in process creation, and avoid ugly workarounds if one wants to build something uncommon.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Thanks,</p><p>Miljenko</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/628529#628529">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>