[rules-users] no visitor implementation for : class org.drools.rule.TypeDeclaration

esteban.aliverti at gmail.com esteban.aliverti at gmail.com
Fri Oct 29 08:39:15 EDT 2010


No problem :). The length of my TODO list is almost infinite.

Best,

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Esteban Aliverti
- Developer @ http://www.plugtree.com
- Blog @ http://ilesteban.wordpress.com


2010/10/29 Tina Vießmann <tviessmann at stud.hs-bremen.de>

>  Sorry, I didn't want to sound like I expected you to solve it. I was just
> curious if you had found something out, because the error remains the same.
> But it's nothing fatal to me. ;-)
>
> I'll see if I can make up a simple test project the next days.
>
> Tina
>
>
>
> Honestly, I didn't have time to take a look at it :(
> Could you please provide me a simple test project where I can see this
> issue?
>
>  Best,
>
> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>
> Esteban Aliverti
> - Developer @ http://www.plugtree.com
> - Blog @ http://ilesteban.wordpress.com
>
>
> 2010/10/24 Tina Vießmann <tviessmann at stud.hs-bremen.de>
>
>>  Hi Esteban,
>>
>> #2 is still a problem for me. Have you found something out?
>>
>> Thank you.
>>  Tina
>>
>>
>> Hi,
>>
>>  #1  I'm not sure if I've understood it correct. Is the message displayed
>> every time a resource containing declares is modified or does is it
>> displayed if the declare statements are changed?
>> The message will appear every time a resource containing a type definition
>> is modified.
>>
>>  #2 The following extract of my original log extract says that the LHS of
>> two rules has been changed. But I haven't modified anything on them. I've
>> just deleted a rule. So what does it mean? Or am I missunderstanding the
>> messages? Because for the the first rule no changes have been detected (and
>> that is what I would expect for all rules except the deleted on.)
>> This is strange. This message should only appear if the LHS of a rule has
>> changed. I will take a look to see if this is a bug.
>>
>>
>>  Best,
>>
>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>>
>> Esteban Aliverti
>> - Developer @ http://www.plugtree.com
>> - Blog @ http://ilesteban.wordpress.com
>>
>>
>> 2010/8/24 Tina Vießmann <tviessmann at stud.hs-bremen.de>
>>
>>>  Thank you for the explanation, Esteban. :)
>>> I'm sorry, but I have still some uncertainties about it.
>>>
>>> #1  I'm not sure if I've understood it correct. Is the message displayed
>>> every time a resource containing declares is modified or does is it
>>> displayed if the declare statements are changed?
>>>
>>> #2 The following extract of my original log extract says that the LHS of
>>> two rules has been changed. But I haven't modified anything on them. I've
>>> just deleted a rule. So what does it mean? Or am I missunderstanding the
>>> messages? Because for the the first rule no changes have been detected (and
>>> that is what I would expect for all rules except the deleted on.)
>>>
>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: [Rule name=
>>> *Warning threshold exceeded to many times*, agendaGroup=MAIN,
>>> salience=0, no-loop=false] didn't change. Removing from diff package and
>>> adding it to unmodified list.
>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: Comparing
>>> [Rule name=*Insert Watcher Into Knowledge Base*, agendaGroup=MAIN,
>>> salience=0, no-loop=false] against [Rule name=Insert Watcher Into Knowledge
>>> Base, agendaGroup=MAIN, salience=0, no-loop=false]
>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: *The rules
>>> have different LHS*
>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: Comparing
>>> [Rule name=*Add Event to Watcher Set*, agendaGroup=MAIN, salience=0,
>>> no-loop=false] against [Rule name=Add Event to Watcher Set,
>>> agendaGroup=MAIN, salience=0, no-loop=false]
>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: *The rules
>>> have different LHS*
>>>
>>>  Thanks :)
>>> Tina
>>>
>>>
>>>
>>> Am 23.08.2010 23:33, schrieb Esteban Aliverti:
>>>
>>> When working on incremental change-set processing mode, Knowledge Agent
>>> performs a diff between the original and the modified  resources. Modified
>>> resources are compiled, and a visitor pattern is used to loop over knowledge
>>> definitions (such as rules, functions, queries, etc.).
>>> So if rule1 was modified in the new resource, it is removed from the
>>> original kbase and replaced with the new implementation. The thing is that
>>> kagent doesn't implement a visitor for TypeDeclaration (when you use *
>>> declare* in your DRL to define your model) so it doesn't know how to
>>> handle them.
>>> I have recently fix a typo in the visitor implementation that prevented
>>> you to receive a better message:
>>>
>>>  "BinaryResourceDiffProducerImpl: Couldn't handle
>>> "+yourDefinitionName+". We must leave it in the new Package."
>>>
>>>  This means that kagent doesn't support modifications on declared types
>>> yet.
>>>
>>>  Best,
>>>
>>>
>>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>>>
>>> Esteban Aliverti
>>> - Developer @ http://www.plugtree.com
>>> - Blog @ http://ilesteban.wordpress.com
>>>
>>>
>>> 2010/8/23 Tina Vießmann <tviessmann at stud.hs-bremen.de>
>>>
>>>>  Hi,
>>>>
>>>> I'm getting a two red highlighted outputs in eclipse if I modify my
>>>> rules file during run time. Besides that the modifications seem to work.
>>>> What does it mean?
>>>>
>>>> The full output I get when the resource change is detected is listed
>>>> below. The bold lines are the concerned ones.
>>>>
>>>> Thanks for any help! :)
>>>> Tina
>>>>
>>>>
>>>> [2010:08:235 21:08:296:debug] ResourceChangeScanner attempt to scan 1
>>>> resources
>>>> [2010:08:235 21:08:296:debug] ResourceChangeScanner modified
>>>> resource=[ClassPathResource path='testRule.drl'] : 1282559206875 :
>>>> 1282591705000
>>>> [2010:08:235 21:08:296:debug] ResourceChangeNotification received
>>>> ChangeSet notification
>>>> [2010:08:235 21:08:296:debug] ResourceChangeScanner thread is waiting
>>>> for 10 seconds.
>>>> [2010:08:235 21:08:296:debug] ResourceChangeNotification processing
>>>> ChangeSet
>>>> [2010:08:235 21:08:296:debug] ResourceChangeNotification ChangeSet
>>>> modified resource=[ClassPathResource path='testRule.drl'] for
>>>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4
>>>> [2010:08:235 21:08:296:debug] KnowledgeAgent received ChangeSet changed
>>>> notification
>>>> [2010:08:235 21:08:296:info] KnowledgeAgent applying ChangeSet
>>>> [2010:08:235 21:08:296:debug] KnowledgeAgent removing mappings for
>>>> resource=[ClassPathResource path='testRule.drl'] with unsubscribe=true
>>>> [2010:08:235 21:08:296:debug] KnowledgeAgent notifier unsubscribing to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:296:debug] ResourceChangeNotification unsubscribing
>>>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:296:debug] ResourceChangeScanner unsubcribing
>>>> notifier=org.drools.io.impl.ResourceChangeNotifierImpl at 13576a2 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:296:debug] ResourceChangeScanner
>>>> resource=[ClassPathResource path='testRule.drl'] now has no subscribers
>>>> [2010:08:235 21:08:296:debug] KnowledgeAgent rebuilding KnowledgeBase
>>>> using ChangeSet
>>>> [2010:08:235 21:08:296:info] KnowledgeAgent performing an incremental
>>>> build of the ChangeSet
>>>> [2010:08:235 21:08:296:debug] ResourceChangeNotification thread is
>>>> waiting for queue update
>>>> [INFO ] 21:30:10,375 [main] "Event retracted."  (DRL Logger)
>>>> [2010:08:235 21:08:453:debug] KnowledgeAgent: Diffing:
>>>> [ClassPathResource path='testRule.drl']
>>>> [INFO ] 21:30:10,453 [main] "Event retracted."  (DRL Logger)
>>>> [2010:08:235 21:08:500:debug] BinaryResourceDiffProducerImpl: [Rule
>>>> name=delete parameter values, agendaGroup=MAIN, salience=0, no-loop=false]
>>>> is not present anymore. Adding to removed list.
>>>> [2010:08:235 21:08:500:debug] BinaryResourceDiffProducerImpl:
>>>> org.drools.rule.Function at 67fe80 did change. Marking as removed so it
>>>> new version could be added later.
>>>> [2010:08:235 21:08:500:debug] BinaryResourceDiffProducerImpl: Comparing
>>>> [Rule name=Warning threshold exceeded to many times, agendaGroup=MAIN,
>>>> salience=0, no-loop=false] against [Rule name=Warning threshold exceeded to
>>>> many times, agendaGroup=MAIN, salience=0, no-loop=false]
>>>> *no visitor implementation for : class org.drools.rule.TypeDeclaration
>>>> : org.drools.rule.TypeDeclaration at 95f290
>>>> no visitor implementation for : class org.drools.rule.TypeDeclaration :
>>>> org.drools.rule.TypeDeclaration at bfd66a*
>>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: [Rule
>>>> name=Warning threshold exceeded to many times, agendaGroup=MAIN, salience=0,
>>>> no-loop=false] didn't change. Removing from diff package and adding it to
>>>> unmodified list.
>>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: Comparing
>>>> [Rule name=Insert Watcher Into Knowledge Base, agendaGroup=MAIN, salience=0,
>>>> no-loop=false] against [Rule name=Insert Watcher Into Knowledge Base,
>>>> agendaGroup=MAIN, salience=0, no-loop=false]
>>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: The rules
>>>> have different LHS
>>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: Comparing
>>>> [Rule name=Add Event to Watcher Set, agendaGroup=MAIN, salience=0,
>>>> no-loop=false] against [Rule name=Add Event to Watcher Set,
>>>> agendaGroup=MAIN, salience=0, no-loop=false]
>>>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl: The rules
>>>> have different LHS
>>>> [2010:08:235 21:08:546:debug] KnowledgeAgent: Removing: [Rule
>>>> name=delete parameter values, agendaGroup=MAIN, salience=0, no-loop=false]
>>>> [2010:08:235 21:08:546:debug] KnowledgeAgent removing Rule=[Rule
>>>> name=delete parameter values, agendaGroup=MAIN, salience=0, no-loop=false]
>>>> from package=net.eads.astrium.aits.cep.rules
>>>> [2010:08:235 21:08:546:debug] KnowledgeAgent: Removing:
>>>> org.drools.rule.Function at 67fe80
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>>>> resource=[ClassPathResource path='testRule.drl'] to
>>>> KnowledgeDefinition=[Rule name=Warning threshold exceeded to many times,
>>>> agendaGroup=MAIN, salience=0, no-loop=false]
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent obtaining pkg
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>>>> resource=[ClassPathResource path='testRule.drl'] to
>>>> KnowledgeDefinition=[Rule name=Insert Watcher Into Knowledge Base,
>>>> agendaGroup=MAIN, salience=0, no-loop=false]
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier subscribing to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] ResourceChangeNotification subscribing
>>>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] ResourceChangeScanner subcribing
>>>> notifier=org.drools.io.impl.ResourceChangeNotifierImpl at 13576a2 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>>>> resource=[ClassPathResource path='testRule.drl'] to
>>>> KnowledgeDefinition=[Rule name=Add Event to Watcher Set, agendaGroup=MAIN,
>>>> salience=0, no-loop=false]
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier subscribing to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] ResourceChangeNotification subscribing
>>>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>>>> resource=[ClassPathResource path='testRule.drl'] to
>>>> KnowledgeDefinition=org.drools.rule.TypeDeclaration at 17dff15
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier subscribing to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] ResourceChangeNotification subscribing
>>>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>>>> resource=[ClassPathResource path='testRule.drl'] to
>>>> KnowledgeDefinition=org.drools.rule.TypeDeclaration at f5cbda
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier subscribing to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] ResourceChangeNotification subscribing
>>>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>>>> resource=[ClassPathResource path='testRule.drl'] to
>>>> KnowledgeDefinition=org.drools.rule.Function at 11a59ce
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier subscribing to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] ResourceChangeNotification subscribing
>>>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>>>> resource=[ClassPathResource path='testRule.drl']
>>>> [2010:08:235 21:08:562:debug] KnowledgeAgent adding
>>>> KnowledgeDefinitionsPackage net.eads.astrium.aits.cep.rules
>>>> [2010:08:235 21:08:578:info] KnowledgeAgent incremental build of
>>>> KnowledgeBase finished and in use
>>>> [2010:08:235 21:08:578:debug] KnowledgeAgent finished rebuilding
>>>> KnowledgeBase using ChangeSet
>>>>
>>>> _______________________________________________
>>>> rules-users mailing list
>>>> rules-users at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/rules-users
>>>>
>>>>
>>>
>>> _______________________________________________
>>> rules-users mailing listrules-users at lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/rules-users
>>>
>>>
>>>
>>> _______________________________________________
>>> rules-users mailing list
>>> rules-users at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/rules-users
>>>
>>>
>>
>> _______________________________________________
>> rules-users mailing listrules-users at lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/rules-users
>>
>>
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>
>>
>
> _______________________________________________
> rules-users mailing listrules-users at lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/rules-users
>
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20101029/a6ecb690/attachment.html 


More information about the rules-users mailing list