Повторная загрузка удаленного ресурса управляющего drools на drools-camel-server

Я использую drools-camel-server 5.4 final для выполнения правил, полученных от guvnor на jboss AS7, следующим образом:

    <drools:resource type="PKG" source="http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/package/mypackage/Test"
                            basic-authentication="enabled" username="test" password="test" />
    </drools:resources>
    <drools:ksession id="ksession1" type="stateless" 
            kbase="kbase" node="node1" />

как я могу перезагрузить или перестроить базу знаний, чтобы любые изменения в правилах мгновенно отражались на сервере выполнения?


person bhochhi    schedule 01.06.2012    source источник


Ответы (2)


Да, вы можете, добавив агент знаний и сканер изменений ресурсов... вот мой рабочий пример

<drools:resource-change-scanner id="s1" interval="10" enabled="true"/>
<drools:kagent kbase="kbase1" id="kagent" new-instance="false"/> 

<drools:grid-node id="node1"/>

<drools:ksession id="ksession1" type="stateless" kbase="kbase1" node="node1"/>

<drools:kbase id="kbase1" node="node1">
   <drools:resources>
      <drools:resource  type="DRL" source="classpath:test.drl"/>
   </drools:resources>
</drools:kbase>
person Sean Burns    schedule 17.07.2012
comment
Спасибо за ваш ответ. Я считаю, что это правильный способ, однако я не могу заставить его работать, когда источник удален. может быть я что-то упускаю. - person bhochhi; 03.08.2012

Я была такая же проблема. Нигде не нашел решения. Я пришел к пробам и ошибкам и, в конце концов, к тому, что, кажется, работает для меня. Он определяет, когда мои удаленные ресурсы в Guvnor были обновлены.

<drools:resource-change-scanner id="s1" interval="10" enabled="true" />
<drools:resource id="cs" type="CHANGE_SET" source="http://localhost:8080/drools-guvnor/rest/packages/com.test/assets/CHANGE_SET/source" basic-authentication="enabled" username="admin" password="admin" />

<drools:kagent kbase="kbase1" id="kagent" new-instance="false">
    <drools:resources>
        <drools:resource ref="cs" />
    </drools:resources>
</drools:kagent>

<drools:grid-node id="node1"/> 
<drools:ksession id="ksession1" type="stateless" kbase="kbase1" node="node1"/>

<drools:kbase id="kbase1" node="node1">
    <drools:resources>
        <drools:resource ref="cs" />
    </drools:resources>
</drools:kbase>  
person xangxiong    schedule 29.01.2013