You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by bu...@apache.org on 2004/09/09 08:53:38 UTC

DO NOT REPLY [Bug 31137] New: - Caching of rules

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=31137>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=31137

Caching of rules

           Summary: Caching of rules
           Product: Commons
           Version: 1.5 Final
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Digester
        AssignedTo: commons-dev@jakarta.apache.org
        ReportedBy: larsvonk@hotmail.com


Hello,

I am trying to define my rules in a xml file, read it once and reuse them 
throughout the application. I experienced the following problems by doing so:

I defined my rules in a rule-file and created a RulesSet with the 
org.apache.commons.digester.xmlrules.FromXmlRuleSet. However when i reused this 
RuleSet for the second Digester call:

Digester digester = new Digester()
digester.addRuleSet(rsh.getRuleSet());

(where rsh.getRuleSet() returns the one instance of the RuleSet), the call 
addRuleSet failed with a 
"java.lang.NoSuchMethodException: No such accessible method: add() on object: 
org.apache.commons.digester.ObjectCreateRule."
This is logical because there is no such method in ObjectCreateRule.

If i create a new RuleSet for each digester it works fine.

I did some debugging and i found out that when you add a RuleSet to a Digester 
the Digester performs a [ruleSet.addRuleInstances(this);] Is it true that this 
call adds all the standard rules to the RulesSet again so they are now devined 
double in the RuleSet?

What is the proper way to define your rules in a xml file and create Rules from 
that file. In http://wiki.apache.org/jakarta-commons/Digester/FAQ 1.3 is stated 
that one can reuse a RulesBase safely, but how can a RulesBase be created from 
a xml file? Does the FAQ 1.3 not apply to a RulesSet?

Regards,
Lars Vonk

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org