<br><br><div class="gmail_quote">On Mon, Nov 1, 2010 at 7:06 PM, Mark Proctor <span dir="ltr">&lt;<a href="mailto:mproctor@codehaus.org">mproctor@codehaus.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">


  
    
  
  <div text="#000000" bgcolor="#ffffff"><div><div></div><div class="h5">
    On 01/11/2010 19:05, tizo wrote:
    <blockquote type="cite"><br>
      <br>
      <div class="gmail_quote">On Mon, Nov 1, 2010 at 4:21 PM, Mark
        Proctor <span dir="ltr">&lt;<a href="mailto:mproctor@codehaus.org" target="_blank">mproctor@codehaus.org</a>&gt;</span>
        wrote:<br>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
          <div text="#000000" bgcolor="#ffffff">
            <div> On 01/11/2010 15:31, tizo wrote:
              <blockquote type="cite">
                <div class="gmail_quote">
                  <div>
                    <div>
                      <div class="gmail_quote">On Wed, Oct 27, 2010 at
                        5:21 PM, tizo <span dir="ltr">&lt;<a href="mailto:tizone@gmail.com" target="_blank">tizone@gmail.com</a>&gt;</span>
                        wrote:<br>
                        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"> Hi
                          there,<br>
                          <br>
                          I have seen in chapter 6 of the documentation,
                          that Drools Flow can be configured to use JPA
                          and transactions to persist the running
                          states. However, I am in a EJB where I obtain
                          entity managers with a @PersistenceContext
                          annotation, and the transactions are managed
                          by the container, whereas in the example an
                          EntityManagerFactory and a TransactionManager
                          are used. <br>
                          <br>
                          Could I configure Flow in a direct way to be
                          used by my EJB?<br>
                          <br>
                          Thanks very much,<br>
                          <font color="#888888"><br>
                            tizo<br>
                            <br>
                          </font></blockquote>
                      </div>
                      <br>
                    </div>
                  </div>
                  Ok, looking at the code, I guess that Drools flow is
                  not ready to work with standards EJBs. The reasons are
                  the following:<br>
                  <br>
                   * The JPA annotations are not standard JPA
                  annotations, but hibernate ones. For example
                  &quot;CollectionOfElements&quot; in ProcessInstanceInfo class.<br>
                </div>
              </blockquote>
            </div>
            That was the one element we couldn&#39;t find a replacement for
            in JPA1, JPA2 fixes this, but we haven&#39;t updated to JPA2
            yet. I don&#39;t believe we use any other hibernate specific
            annotations.
            <div><br>
              <blockquote type="cite">
                <div class="gmail_quote">  * Transactions are managed by
                  Drools, as opposed to some EJBs where transactions are
                  managed by the container.<br>
                </div>
              </blockquote>
            </div>
            You can use both JTA transactions and local entity
            transactions. So transactions can be drools maintained or
            container/external maintained.<br>
            <blockquote type="cite">
              <div>
                <div class="gmail_quote"><br>
                  As for that, I will probably modify the codes, so Flow
                  could be used in our EJBs. I would like to know if
                  someone could guide me on what should I modify. <br>
                  <br>
                  I will post the modifications in case they are of
                  interest to someone.<br>
                  <br>
                  Thanks very much,<br>
                  <font color="#888888"><br>
                    tizo<br>
                    <br>
                  </font></div>
              </div>
            </blockquote>
          </div>
        </blockquote>
        <div>Mark,<br>
          <br>
          Thanks for your response. Could you tell me how can I use
          Drools with my container managed transactions, or where can I
          read how to do that?. I think that the example given in the
          documentation (Drools Flow, 6.1.4 - Transactions) does not
          apply to this case, and I can&#39;t figure out how to do it.<br>
        </div>
      </div>
    </blockquote></div></div>
    Shows configuring a JTA transaction here:<br>
<a href="http://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/javadocs/stable/drools-api/org/drools/persistence/jpa/JPAKnowledgeService.html" target="_blank">http://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/javadocs/stable/drools-api/org/drools/persistence/jpa/JPAKnowledgeService.html</a><br>

    <br></div></blockquote></div><br>Ok, that works, but BMT (bean managed transactions) is used, instead of CMT (container managed transactions).<br><br>In any way, that is not a big deal at this moment, because I am stuck trying to imagine how a stateless session bean could start a flow process, persist its state when a human task is reached (using WS-HumanTask or not), and be reloaded at another time, when the human task is really done.<br>