Re: [rules-users] No errors thrown from KnowledgeAgent

2013-09-20 Thread Davide Sottara
Let the team correct me if I'm mistaken or imprecise.
There is no commercial version, the only thing you can get is a
productized version which has 
been through Q/A for a longer period, usually 6 months. The strategy is to
get features out in the
community version, get feedback from there and make them part of the product
when they're more
mature.
If you pay for the product, **I think** that you'll actually get support and
bug fixes based on a SLA. 
Otherwise, you'll just have to report them and wait until somebody will
have the time to fix them, 
possibly in a future version. Or provide a fix yourself :)
Best
Davide 



--
View this message in context: 
http://drools.46999.n3.nabble.com/rules-users-No-errors-thrown-from-KnowledgeAgent-tp4025209p4026066.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] No errors thrown from KnowledgeAgent

2013-09-20 Thread Michael Anstis
Here's a blog entry Mark made on this very subject:
blog.athico.com/2011/04/drools-jbpm-community-versus-product.html?m=1

Sent on the move
On 20 Sep 2013 21:02, Davide Sottara dso...@gmail.com wrote:

 Let the team correct me if I'm mistaken or imprecise.
 There is no commercial version, the only thing you can get is a
 productized version which has
 been through Q/A for a longer period, usually 6 months. The strategy is to
 get features out in the
 community version, get feedback from there and make them part of the
 product
 when they're more
 mature.
 If you pay for the product, **I think** that you'll actually get support
 and
 bug fixes based on a SLA.
 Otherwise, you'll just have to report them and wait until somebody will
 have the time to fix them,
 possibly in a future version. Or provide a fix yourself :)
 Best
 Davide



 --
 View this message in context:
 http://drools.46999.n3.nabble.com/rules-users-No-errors-thrown-from-KnowledgeAgent-tp4025209p4026066.html
 Sent from the Drools: User forum mailing list archive at Nabble.com.
 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users

___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users

Re: [rules-users] No errors thrown from KnowledgeAgent

2013-09-19 Thread Davide Sottara
It is a bug, the KA can detect compilation errors in resources, but will
not capture runtime exceptions.
I have opened a ticket, It will be fixed in 5.6 and 6.x
Davide

On 09/17/2013 01:51 PM, De Rooms Brecht wrote:
 Dear Drools users,
 Apparently it was not caused by the previously mentioned fix.
 Sometimes I still had a KnowledgeAgent in my server that doesn't
 respond anymore which seems to be caused by a mistake in the DRL file.
 I started to investigate the source code of KnowledgeAgentImpl and
 KnowledgeBaseImpl and recompiled them to add some prints. Finally I
 tracked it until AbstractRuleBase.addPackages.

 There is a giant Try-final block and I noticed by adding prints that
 it stopped somewhere in the middle. When it does fail, my
 KnowledgeAgent stops working completely.
 The try-final seemed to be the only place for me where an exception
 might be ignored so I added a catch clause.
 As a result, the error report of my drl file was nicely printed and my
 agent didn't crash:

 *org.drools.RuntimeDroolsException: Unable to resolve class 'int' for
 global 'RULES_MATCHED'
 at
 org.drools.common.AbstractRuleBase.mergePackage(AbstractRuleBase.java:818)
 at
 org.drools.common.AbstractRuleBase.addPackages(AbstractRuleBase.java:615)
 at
 org.drools.reteoo.ReteooRuleBase.addPackages(ReteooRuleBase.java:472)
 at
 org.drools.impl.KnowledgeBaseImpl.addKnowledgePackages(KnowledgeBaseImpl.java:153)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.addResourcesToKnowledgeBase(KnowledgeAgentImpl.java:1173)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.incrementalBuildResources(KnowledgeAgentImpl.java:1058)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.buildKnowledgeBase(KnowledgeAgentImpl.java:738)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:259)
 at
 org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:1357)
 at
 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
 at java.util.concurrent.FutureTask.run(FutureTask.java:166)
 at
 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
 at java.util.concurrent.FutureTask.run(FutureTask.java:166)
 at
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:722)
 *
 Maybe there is a reason for this missing catch so I am not sure
 whether I fixed it and broke something else ( eg. maybe I should undo
 a part of the operations before I continue).
 Is there anyone who knows this code and who can help me?

 Extra information:
 - I use Drools 5.5 from the Maven repository.
 - my agent configuration:
 agentConf.setProperty(drools.agent.newInstance,
 false);

 agentConf.setProperty(drools.agent.useKBaseClassLoaderForCompiling,
 true);


 Kind Regards,
 De Rooms Brecht

 Op 31/07/2013 14:45, De Rooms Brecht schreef:
 The bug was caused by one of the InputStreams that was not closed
 properly which caused the knowledgeAgent to block.
 I think my issues are solved now.

 Thanks for looking into this.
 Kind Regards,

 Op 31/07/2013 14:19, De Rooms Brecht schreef:
 Hello David and thanks for responding.
 I know it supports these event listeners and I use them. In my
 program, I have two knowledge agents and the first one
 (preprocessing) will read the file, preprocess a DRL and then write
 a second modified DRL file in a folder that is monitored by the
 second one. When I modify the original DRL file *(1.* in prints
 below*)* monitored by the preprocessing agent, everything works fine
 and the rule is triggered*(**2.)*. However, when I delete a file
 *(**3.)*, the knowledgeAgent just blocks after
 AfterChangeSetAppliedEvent and does not do anything anymore.. If I
 send new data in the knowledgeAgent it does not react anymore.

 I would expect to get a stacktrace of what went wrong but I do not
 get any info besides of the systemeventlistener or
 knowledgeagentlistener. Is there any way I can get a stacktrace?
 Kind Regards,
 De Rooms Brecht

 _*1. Resources Changed = Modified:  [[FileResource
 file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
 /eventListener 1:::
 ==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource
 file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
 //eventListener 1:::
 ==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource
 file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
 //eventListener 1::: ==[AfterChangeSetProcessedEvent:
 ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[],
 resourcesModified=[[FileResource
 

Re: [rules-users] No errors thrown from KnowledgeAgent

2013-09-19 Thread De Rooms Brecht

Dear Davide

thank you very much for looking into this.
I was wondering, are these kind of bugs also there in the commercial 
edition or is that a completely different implementation?


Kind Regards,
De Rooms Brecht

Op 19/09/2013 10:46, Davide Sottara schreef:
It is a bug, the KA can detect compilation errors in resources, but 
will not capture runtime exceptions.

I have opened a ticket, It will be fixed in 5.6 and 6.x
Davide

On 09/17/2013 01:51 PM, De Rooms Brecht wrote:

Dear Drools users,
Apparently it was not caused by the previously mentioned fix. 
Sometimes I still had a KnowledgeAgent in my server that doesn't 
respond anymore which seems to be caused by a mistake in the DRL file.
I started to investigate the source code of KnowledgeAgentImpl and 
KnowledgeBaseImpl and recompiled them to add some prints. Finally I 
tracked it until AbstractRuleBase.addPackages.


There is a giant Try-final block and I noticed by adding prints that 
it stopped somewhere in the middle. When it does fail, my 
KnowledgeAgent stops working completely.
The try-final seemed to be the only place for me where an exception 
might be ignored so I added a catch clause.
As a result, the error report of my drl file was nicely printed and 
my agent didn't crash:


*org.drools.RuntimeDroolsException: Unable to resolve class 'int' for 
global 'RULES_MATCHED'
at 
org.drools.common.AbstractRuleBase.mergePackage(AbstractRuleBase.java:818)
at 
org.drools.common.AbstractRuleBase.addPackages(AbstractRuleBase.java:615)
at 
org.drools.reteoo.ReteooRuleBase.addPackages(ReteooRuleBase.java:472)
at 
org.drools.impl.KnowledgeBaseImpl.addKnowledgePackages(KnowledgeBaseImpl.java:153)
at 
org.drools.agent.impl.KnowledgeAgentImpl.addResourcesToKnowledgeBase(KnowledgeAgentImpl.java:1173)
at 
org.drools.agent.impl.KnowledgeAgentImpl.incrementalBuildResources(KnowledgeAgentImpl.java:1058)
at 
org.drools.agent.impl.KnowledgeAgentImpl.buildKnowledgeBase(KnowledgeAgentImpl.java:738)
at 
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:259)
at 
org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:1357)
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

at java.lang.Thread.run(Thread.java:722)
*
Maybe there is a reason for this missing catch so I am not sure 
whether I fixed it and broke something else ( eg. maybe I should undo 
a part of the operations before I continue).

Is there anyone who knows this code and who can help me?

Extra information:
- I use Drools 5.5 from the Maven repository.
- my agent configuration:
agentConf.setProperty(drools.agent.newInstance, false);
agentConf.setProperty(drools.agent.useKBaseClassLoaderForCompiling, 
true);



Kind Regards,
De Rooms Brecht

Op 31/07/2013 14:45, De Rooms Brecht schreef:
The bug was caused by one of the InputStreams that was not closed 
properly which caused the knowledgeAgent to block.

I think my issues are solved now.

Thanks for looking into this.
Kind Regards,

Op 31/07/2013 14:19, De Rooms Brecht schreef:

Hello David and thanks for responding.
I know it supports these event listeners and I use them. In my 
program, I have two knowledge agents and the first one 
(preprocessing) will read the file, preprocess a DRL and then write 
a second modified DRL file in a folder that is monitored by the 
second one. When I modify the original DRL file *(1.* in prints 
below*)* monitored by the preprocessing agent, everything works 
fine and the rule is triggered*(**2.)*. However, when I delete a 
file *(**3.)*, the knowledgeAgent just blocks after 
AfterChangeSetAppliedEvent and does not do anything anymore.. If I 
send new data in the knowledgeAgent it does not react anymore.


I would expect to get a stacktrace of what went wrong but I do not 
get any info besides of the systemeventlistener or 
knowledgeagentlistener. Is there any way I can get a stacktrace?

Kind Regards,
De Rooms Brecht

_*1. Resources Changed = Modified:  [[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
/eventListener 1::: 
==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: 
==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//

Re: [rules-users] No errors thrown from KnowledgeAgent

2013-09-17 Thread Davide Sottara
I'll take a look and get back to you
Thanks
Davide

On 09/17/2013 01:51 PM, De Rooms Brecht wrote:
 Dear Drools users,
 Apparently it was not caused by the previously mentioned fix.
 Sometimes I still had a KnowledgeAgent in my server that doesn't
 respond anymore which seems to be caused by a mistake in the DRL file.
 I started to investigate the source code of KnowledgeAgentImpl and
 KnowledgeBaseImpl and recompiled them to add some prints. Finally I
 tracked it until AbstractRuleBase.addPackages.

 There is a giant Try-final block and I noticed by adding prints that
 it stopped somewhere in the middle. When it does fail, my
 KnowledgeAgent stops working completely.
 The try-final seemed to be the only place for me where an exception
 might be ignored so I added a catch clause.
 As a result, the error report of my drl file was nicely printed and my
 agent didn't crash:

 *org.drools.RuntimeDroolsException: Unable to resolve class 'int' for
 global 'RULES_MATCHED'
 at
 org.drools.common.AbstractRuleBase.mergePackage(AbstractRuleBase.java:818)
 at
 org.drools.common.AbstractRuleBase.addPackages(AbstractRuleBase.java:615)
 at
 org.drools.reteoo.ReteooRuleBase.addPackages(ReteooRuleBase.java:472)
 at
 org.drools.impl.KnowledgeBaseImpl.addKnowledgePackages(KnowledgeBaseImpl.java:153)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.addResourcesToKnowledgeBase(KnowledgeAgentImpl.java:1173)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.incrementalBuildResources(KnowledgeAgentImpl.java:1058)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.buildKnowledgeBase(KnowledgeAgentImpl.java:738)
 at
 org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:259)
 at
 org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:1357)
 at
 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
 at java.util.concurrent.FutureTask.run(FutureTask.java:166)
 at
 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
 at java.util.concurrent.FutureTask.run(FutureTask.java:166)
 at
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:722)
 *
 Maybe there is a reason for this missing catch so I am not sure
 whether I fixed it and broke something else ( eg. maybe I should undo
 a part of the operations before I continue).
 Is there anyone who knows this code and who can help me?

 Extra information:
 - I use Drools 5.5 from the Maven repository.
 - my agent configuration:
 agentConf.setProperty(drools.agent.newInstance,
 false);

 agentConf.setProperty(drools.agent.useKBaseClassLoaderForCompiling,
 true);


 Kind Regards,
 De Rooms Brecht

 Op 31/07/2013 14:45, De Rooms Brecht schreef:
 The bug was caused by one of the InputStreams that was not closed
 properly which caused the knowledgeAgent to block.
 I think my issues are solved now.

 Thanks for looking into this.
 Kind Regards,

 Op 31/07/2013 14:19, De Rooms Brecht schreef:
 Hello David and thanks for responding.
 I know it supports these event listeners and I use them. In my
 program, I have two knowledge agents and the first one
 (preprocessing) will read the file, preprocess a DRL and then write
 a second modified DRL file in a folder that is monitored by the
 second one. When I modify the original DRL file *(1.* in prints
 below*)* monitored by the preprocessing agent, everything works fine
 and the rule is triggered*(**2.)*. However, when I delete a file
 *(**3.)*, the knowledgeAgent just blocks after
 AfterChangeSetAppliedEvent and does not do anything anymore.. If I
 send new data in the knowledgeAgent it does not react anymore.

 I would expect to get a stacktrace of what went wrong but I do not
 get any info besides of the systemeventlistener or
 knowledgeagentlistener. Is there any way I can get a stacktrace?
 Kind Regards,
 De Rooms Brecht

 _*1. Resources Changed = Modified:  [[FileResource
 file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
 /eventListener 1:::
 ==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource
 file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
 //eventListener 1:::
 ==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource
 file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
 //eventListener 1::: ==[AfterChangeSetProcessedEvent:
 ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[],
 resourcesModified=[[FileResource
 file='knowledge\realtimeKnowledge\test.brules.testRule.drl']],
 knowledgeDefinitionsRemoved=[]}]//
 //eventListener 1::: ==[ResourceCompilationFailedEvent:
 

Re: [rules-users] No errors thrown from KnowledgeAgent

2013-09-17 Thread De Rooms Brecht

Dear Drools users,

Apparently it was not caused by the previously mentioned fix. Sometimes 
I still had a KnowledgeAgent in my server that doesn't respond anymore 
which seems to be caused by a mistake in the DRL file.
I started to investigate the source code of KnowledgeAgentImpl and 
KnowledgeBaseImpl and recompiled them to add some prints. Finally I 
tracked it until AbstractRuleBase.addPackages.


There is a giant Try-final block and I noticed by adding prints that it 
stopped somewhere in the middle. When it does fail, my KnowledgeAgent 
stops working completely.
The try-final seemed to be the only place for me where an exception 
might be ignored so I added a catch clause.
As a result, the error report of my drl file was nicely printed and my 
agent didn't crash:


*org.drools.RuntimeDroolsException: Unable to resolve class 'int' for 
global 'RULES_MATCHED'
at 
org.drools.common.AbstractRuleBase.mergePackage(AbstractRuleBase.java:818)
at 
org.drools.common.AbstractRuleBase.addPackages(AbstractRuleBase.java:615)
at 
org.drools.reteoo.ReteooRuleBase.addPackages(ReteooRuleBase.java:472)
at 
org.drools.impl.KnowledgeBaseImpl.addKnowledgePackages(KnowledgeBaseImpl.java:153)
at 
org.drools.agent.impl.KnowledgeAgentImpl.addResourcesToKnowledgeBase(KnowledgeAgentImpl.java:1173)
at 
org.drools.agent.impl.KnowledgeAgentImpl.incrementalBuildResources(KnowledgeAgentImpl.java:1058)
at 
org.drools.agent.impl.KnowledgeAgentImpl.buildKnowledgeBase(KnowledgeAgentImpl.java:738)
at 
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:259)
at 
org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:1357)
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

at java.lang.Thread.run(Thread.java:722)
*
Maybe there is a reason for this missing catch so I am not sure whether 
I fixed it and broke something else ( eg. maybe I should undo a part of 
the operations before I continue).

Is there anyone who knows this code and who can help me?

Extra information:
- I use Drools 5.5 from the Maven repository.
- my agent configuration:
agentConf.setProperty(drools.agent.newInstance, false);
agentConf.setProperty(drools.agent.useKBaseClassLoaderForCompiling, 
true);



Kind Regards,
De Rooms Brecht

Op 31/07/2013 14:45, De Rooms Brecht schreef:
The bug was caused by one of the InputStreams that was not closed 
properly which caused the knowledgeAgent to block.

I think my issues are solved now.

Thanks for looking into this.
Kind Regards,

Op 31/07/2013 14:19, De Rooms Brecht schreef:

Hello David and thanks for responding.
I know it supports these event listeners and I use them. In my 
program, I have two knowledge agents and the first one 
(preprocessing) will read the file, preprocess a DRL and then write a 
second modified DRL file in a folder that is monitored by the second 
one. When I modify the original DRL file *(1.* in prints below*)* 
monitored by the preprocessing agent, everything works fine and the 
rule is triggered*(**2.)*. However, when I delete a file *(**3.)*, 
the knowledgeAgent just blocks after AfterChangeSetAppliedEvent and 
does not do anything anymore.. If I send new data in the 
knowledgeAgent it does not react anymore.


I would expect to get a stacktrace of what went wrong but I do not 
get any info besides of the systemeventlistener or 
knowledgeagentlistener. Is there any way I can get a stacktrace?

Kind Regards,
De Rooms Brecht

_*1. Resources Changed = Modified:  [[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
/eventListener 1::: 
==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: 
==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: ==[AfterChangeSetProcessedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 1::: ==[ResourceCompilationFailedEvent: 
org.drools.builder.impl.KnowledgeBuilderImpl@70d0d127]//
//eventListener 1::: ==[KnowledgeBaseUpdatedEvent: 
org.drools.impl.KnowledgeBaseImpl@49669be]//
//

Re: [rules-users] No errors thrown from KnowledgeAgent

2013-07-31 Thread Davide Sottara
The KA logs to a SystemEventListener, and supports a dedicated event
listener for
additions/updates/etc...

You can do:

kagent.setSystemEventListener( new PrintStreamSystemEventListener() );
kagent.addEventListener( new DebugKnowledgeAgentEventListener(  ) );



On 07/30/2013 01:55 AM, De Rooms Brecht wrote:
 Dear Drools users,

 I have been testing with the KnowledgeAgent from version 5.4 and 5.5. It 
 monitors a changeset and is set to incrementally build the 
 knowledgebase. I noticed that it sometimes crashes but never throws out 
 errors. This happens for example when I define a type two times and when 
 I remove a file. Does anyone experience similar behaviour and has an 
 idea of how I could see the errors? I already tried to check the errors 
 by building it myself using a knowledgebuilder before I update the file 
 that the knowledgeAgent monitors but that's quite a dirty solution.

 Kind Regards,
 De Rooms Brecht
 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] No errors thrown from KnowledgeAgent

2013-07-31 Thread De Rooms Brecht

Hello David and thanks for responding.
I know it supports these event listeners and I use them. In my program, 
I have two knowledge agents and the first one (preprocessing) will read 
the file, preprocess a DRL and then write a second modified DRL file in 
a folder that is monitored by the second one. When I modify the original 
DRL file *(1.* in prints below*)* monitored by the preprocessing agent, 
everything works fine and the rule is triggered*(**2.)*. However, when I 
delete a file *(**3.)*, the knowledgeAgent just blocks after 
AfterChangeSetAppliedEvent and does not do anything anymore.. If I send 
new data in the knowledgeAgent it does not react anymore.


I would expect to get a stacktrace of what went wrong but I do not get 
any info besides of the systemeventlistener or knowledgeagentlistener. 
Is there any way I can get a stacktrace?

Kind Regards,
De Rooms Brecht

_*1. Resources Changed = Modified:  [[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
/eventListener 1::: 
==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: 
==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: ==[AfterChangeSetProcessedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 1::: ==[ResourceCompilationFailedEvent: 
org.drools.builder.impl.KnowledgeBuilderImpl@70d0d127]//
//eventListener 1::: ==[KnowledgeBaseUpdatedEvent: 
org.drools.impl.KnowledgeBaseImpl@49669be]//
//eventListener 1::: ==[AfterChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 2::: ==[BeforeChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\packaged\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 2::: 
==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\packaged\test.brules.testRule.drl']]//
//eventListener 2::: 
==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\packaged\test.brules.testRule.drl']]//
//eventListener 2::: ==[AfterChangeSetProcessedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\packaged\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 2::: ==[KnowledgeBaseUpdatedEvent: 
org.drools.impl.KnowledgeBaseImpl@11c834d1]/


_*2. Rules are triggered when the PKG file its knowledge is updated:*_
/Changed This Rule::: Got Event: TestEvent( number=5, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=4, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=2, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=1, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=2, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=1, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=2, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=1, 
message=doesDynamicEventTypeWork? )//

//
//eventListener 2::: ==[AfterChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\packaged\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 1::: ==[BeforeChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
resourcesAdded=[], resourcesModified=[], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 1::: ==[BeforeChangeSetProcessedEvent: 
ChangeSetImpl{resourcesRemoved=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
resourcesAdded=[], resourcesModified=[], knowledgeDefinitionsRemoved=[]}]/



_*3. *__*Resources Changed = *__*Removed:   [[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
/eventListener 1::: 
==[BeforeResourceProcessedEvent(RESOURCE_MODIFIED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: 
==[AfterResourceProcessedEvent(RESOURCE_MODIFIED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: ==[AfterChangeSetProcessedEvent: 

Re: [rules-users] No errors thrown from KnowledgeAgent

2013-07-31 Thread De Rooms Brecht
The bug was caused by one of the InputStreams that was not closed 
properly which caused the knowledgeAgent to block.

I think my issues are solved now.

Thanks for looking into this.
Kind Regards,

Op 31/07/2013 14:19, De Rooms Brecht schreef:

Hello David and thanks for responding.
I know it supports these event listeners and I use them. In my 
program, I have two knowledge agents and the first one (preprocessing) 
will read the file, preprocess a DRL and then write a second modified 
DRL file in a folder that is monitored by the second one. When I 
modify the original DRL file *(1.* in prints below*)* monitored by the 
preprocessing agent, everything works fine and the rule is 
triggered*(**2.)*. However, when I delete a file *(**3.)*, the 
knowledgeAgent just blocks after AfterChangeSetAppliedEvent and does 
not do anything anymore.. If I send new data in the knowledgeAgent it 
does not react anymore.


I would expect to get a stacktrace of what went wrong but I do not get 
any info besides of the systemeventlistener or knowledgeagentlistener. 
Is there any way I can get a stacktrace?

Kind Regards,
De Rooms Brecht

_*1. Resources Changed = Modified:  [[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
/eventListener 1::: 
==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: 
==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]//
//eventListener 1::: ==[AfterChangeSetProcessedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 1::: ==[ResourceCompilationFailedEvent: 
org.drools.builder.impl.KnowledgeBuilderImpl@70d0d127]//
//eventListener 1::: ==[KnowledgeBaseUpdatedEvent: 
org.drools.impl.KnowledgeBaseImpl@49669be]//
//eventListener 1::: ==[AfterChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 2::: ==[BeforeChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\packaged\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 2::: 
==[BeforeResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\packaged\test.brules.testRule.drl']]//
//eventListener 2::: 
==[AfterResourceProcessedEvent(RESOURCE_REMOVED): [FileResource 
file='knowledge\packaged\test.brules.testRule.drl']]//
//eventListener 2::: ==[AfterChangeSetProcessedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\packaged\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 2::: ==[KnowledgeBaseUpdatedEvent: 
org.drools.impl.KnowledgeBaseImpl@11c834d1]/


_*2. Rules are triggered when the PKG file its knowledge is updated:*_
/Changed This Rule::: Got Event: TestEvent( number=5, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=4, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=2, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=1, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=2, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=1, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=2, 
message=doesDynamicEventTypeWork? )//
//Changed This Rule::: Got Event: TestEvent( number=1, 
message=doesDynamicEventTypeWork? )//

//
//eventListener 2::: ==[AfterChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[], resourcesAdded=[], 
resourcesModified=[[FileResource 
file='knowledge\packaged\test.brules.testRule.drl']], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 1::: ==[BeforeChangeSetAppliedEvent: 
ChangeSetImpl{resourcesRemoved=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
resourcesAdded=[], resourcesModified=[], 
knowledgeDefinitionsRemoved=[]}]//
//eventListener 1::: ==[BeforeChangeSetProcessedEvent: 
ChangeSetImpl{resourcesRemoved=[[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']], 
resourcesAdded=[], resourcesModified=[], knowledgeDefinitionsRemoved=[]}]/



_*3. *__*Resources Changed = *__*Removed:   [[FileResource 
file='knowledge\realtimeKnowledge\test.brules.testRule.drl']]*_
/eventListener 1::: 
==[BeforeResourceProcessedEvent(RESOURCE_MODIFIED): [FileResource 

[rules-users] No errors thrown from KnowledgeAgent

2013-07-30 Thread De Rooms Brecht
Dear Drools users,

I have been testing with the KnowledgeAgent from version 5.4 and 5.5. It 
monitors a changeset and is set to incrementally build the 
knowledgebase. I noticed that it sometimes crashes but never throws out 
errors. This happens for example when I define a type two times and when 
I remove a file. Does anyone experience similar behaviour and has an 
idea of how I could see the errors? I already tried to check the errors 
by building it myself using a knowledgebuilder before I update the file 
that the knowledgeAgent monitors but that's quite a dirty solution.

Kind Regards,
De Rooms Brecht
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users