<!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="https://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;">
    jbpm5.3 - Spring - Manage KSessions
</h3>
<span style="margin-bottom: 10px;">
    created by <a href="https://community.jboss.org/people/pgoncalves">Pedro Gonçalves</a> in <i>jBPM</i> - <a href="https://community.jboss.org/message/747824#747824">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p>After some research in this forum and my understanding of chapter 5 of the docs, I came to the conclusion that I will need one knowledge session per process instance.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I use jbpm5.3, with spring integration and persistence.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><strong>1</strong> - For what I realized, the spring integration does not allow the "one knowledge session per process instance" architecture that I require. Is that true?</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><strong>2</strong> - I've found the possibility of defining the id of the ksession that will be loaded during boot</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><pre class="jive-pre"><code class="jive-code jive-xml">(...)
<span class="jive-xml-tag">&lt;jbpm:ksession id="ksession" type="stateful" kbase="kbase1"&gt;</span>
&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;jbpm:configuration&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;jbpm:jpa-persistence load="1"&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;jbpm:transaction-manager ref="transactionManager"/&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;jbpm:entity-manager-factory ref="entityManagerFactory2" /&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;/jbpm:jpa-persistence&gt;</span>
&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;/jbpm:configuration&gt;</span>
<span class="jive-xml-tag">&lt;/jbpm:ksession&gt;</span>
(...)

</code></pre><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>The load parameter allows to load the ksession with the given id, but it fails to do so the first time it boots (as there is no ksession in the DB). So, even if I consider to have only one ksession for all process instances, I will have to implement some workaround to load the app for the first time. It is supposed to be like that? (The goal is to create a config file that does not need to be changed)</p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Reply to this message by <a href="https://community.jboss.org/message/747824#747824">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in jBPM at <a href="https://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>