[rules-users] Problem using KnowledgeAgent

Mark Proctor mproctor at codehaus.org
Wed Feb 18 07:53:09 EST 2009


Dan Seaver wrote:
> I setup a KnowledgeAgent using the example code in the JavaDoc for
> KnowledgeAgentFactory to access a compiled package in Guvnor. The package
> runs fine, but changes to the package are not picked up. I believe this is
> due to the ChangeSet notification thread being interrupted. But why?
>   
Hmm that's not good. I have the following unit test:
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/agent/KnowledgeAgentTest.java

Could you provide an update for new tests for detecting url changes? 
When making the test you might find it easier to look at the previous 
ruleagent tests:
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-core/src/test/java/org/drools/agent/URLScannerTest.java

Mark
> Also, I'm getting some messages about failing to read schema document. I
> think it is caused by the xml for the ChangeSet, but I'm using the example
> from the JavaDocs.
>   
We haven't provided an XSD yet, so it'll provide schema validation 
issues, those can be ignored.
> Here's a snippet from the log:
>
> [2009:02:48 23:02:905:info] KnowledegAgent has started listening for
> ChangeSet notifications
> [2009:02:48 23:02:905:info] KnowledgAgent created, with configuration:
> monitorChangeSetEvents=true scanResources=true scanDirectories=true
> [2009:02:48 23:02:905:exception 
> java.lang.RuntimeException: KnowledgeAgent ChangeSet notification thread has
> been interrupted
> 	at
> org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:465)
> 	at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.InterruptedException
> 	at
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(Unknown
> Source)
> 	at
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown
> Source)
> 	at java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
> 	at
> org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:463)
> 	... 1 more
> [2009:02:48 23:02:937:info] KnowledegAgent has stopped listening for
> ChangeSet notifications
> (null: 1, 207): schema_reference.4: Failed to read schema document
> 'drools-change-set-5.0.xsd', because 1) could not find the document; 2) the
> document could not be read; 3) the root element of the document is not
> <xsd:schema>.
> (null: 1, 207): cvc-elt.1: Cannot find the declaration of element
> 'change-set'.
> (null: 1, 216): schema_reference.4: Failed to read schema document
> 'drools-change-set-5.0.xsd', because 1) could not find the document; 2) the
> document could not be read; 3) the root element of the document is not
> <xsd:schema>.
> (null: 1, 343): schema_reference.4: Failed to read schema document
> 'drools-change-set-5.0.xsd', because 1) could not find the document; 2) the
> document could not be read; 3) the root element of the document is not
> <xsd:schema>.
> [2009:02:48 23:02:390:info] KnowledgAgent applying ChangeSet
>
>   





More information about the rules-users mailing list