Yes this can be done at runtime. The RuleBase has a reference to each of
the created StatefulSessions that has not called dispose() yet and will
push those rule changes out to each running session.
Mark
pns77 wrote:
Thanks for the response.
Just to confirm when you say "...but you can remove a rule and add another
in its place..." - can this be done at runtime - i.e server is running, i go
add a new rule/change the output of an existing rule. If so, can i have the
new rule take effect ?
Also, do i need to include any specific jar file for this dynamic feature ?
Am not looking at performance here - more from a maintenance/changeability
point of view.
Mark Proctor wrote:
> you cannot change an individual rule, but you can remove a rule and add
> another in its place.
>
> Mark
> pns77 wrote:
>
>> Have been able to execute/run a sample Drools file
>>
>> import com.sample.Message;
>>
>> rule "Hello World"
>> when
>> m : Message( status == Message.HELLO, message : message,
>> testStringExternal : testStringExternal )
>> then
>> System.out.println( message );
>> m.setMessage( "Goodbye cruel world" );
>> System.out.println( testStringExternal + "Message.HELLO" );
>> m.setStatus( Message.GOODBYE );
>> update( m );
>> end
>>
>> Now, is it possible to change the logic dynamically at runtime ? Or is
>> the
>> drl file used only to externalize the business logic? I tried changing
>> the
>> message in drl file and it didnt get reflected
>>
>> Environment - RAD 6.0/jdk 1.4
>>
>> Used the following set of jar files
>> C:\Drools\libraries\drools-core.jar;
>> C:\Drools\libraries\drools-compiler.jar;
>> C:\Drools\libraries\mvel14.jar;
>> C:\Drools\libraries\antlr-runtime.jar;
>> C:\Drools\libraries\xstream.jar;
>> C:\Drools\lib\core-3.2.3.v_686_R32x.jar;
>>
>>
> _______________________________________________
> rules-users mailing list
> rules-users(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>