[Grok-dev] Global utilities registered too early?

Jan-Wijbrand Kolman janwijbrand at gmail.com
Tue Jun 19 07:35:45 EDT 2007


I'm trying to create/register a global utility by subclassing
grok.GlobalUtility. If I understand correctly, exactly one instance of
this utility class is created at registration time, right? It is this
instance that is returned when calling getUtility, right?

Now, in my case the __init__ of my utility class makes use of other
global utilities that are registered by a "third party" package
(called userschema). However, when creating the instance for my
utility class, the "third party" utilities are not registered (yet)
and thus cannot be found.

I'm not sure I fully understand why this is the case (and thus I do
not see a way around it yet). I also tried to <include
package="userschema" ?> just before the <grok:grok package="."/>
directive in my package's configure.zcml, but to no avail; My global
utility seems always to be registered before the utilities from
userschema are registered.

Maybe somebody can nudge me in the right direction with this?

kind regards,
Jan-Wijbrand Kolman

More information about the Grok-dev mailing list