David,

It's defined the other way around. You use <include method="foo"/> and
<exclude method="bar*"/> elements instead.

--knut

On 5/12/05, David J. M. Karlsen <[EMAIL PROTECTED]> wrote:
> James Carman wrote:
> 
> Hmm, now HM complaints:
> 
> 2005-05-12 13:53:17,495 [main] ERROR my.package.ProxyTimingInterceptor
> - Error at
> file:/Q:/hivemodule.xml, line 58, column 25: Element method is not
> allowed here. (DefaultErrorHandler.java:37)
> 2005-05-12 13:53:17,495 [main] ERROR
> my.package.ProxyTimingInterceptor  - Error at
> file:/Q:/hivemodule.xml, line 59, column 28: Element method is not
> allowed here. (DefaultErrorHandler.java:37)
> 
> but still the registry gets constructed and the application runs!?
> 
> 
> > HiveMind doesn't know how to transform your <method> elements into
> > MethodContribution objects unless you tell it.  Try setting up the
> > parameters schema for your service interceptor factory the same way HM
> > does...
> >
> > <service-point id="ProxyTimingInterceptor"
> > interface="org.apache.hivemind.ServiceInterceptorFactory"
> > parameters-schema-id="hivemind.MethodFilter">
> >   <create-instance class="my.package.ProxyJAMonTimingInterceptorFactory"/>
> > </service>
> >
> > See if that helps.  I'm pretty sure you can refer to schemas defined in
> > other modules.  I wouldn't see any reason why you shouldn't be able to.
> >
> > -----Original Message-----
> > From: David J. M. Karlsen [mailto:[EMAIL PROTECTED]
> > Sent: Thursday, May 12, 2005 7:39 AM
> > To: [email protected]
> > Subject: Re: interceptor: getting name of implemened interface
> >
> >
> > James Carman wrote:
> >
> > That may certainly be the cause! I've never grasped the config, schema
> > and config-contribution ideas....
> >
> > relevant parts:
> >
> > <service-point id="ProxyTimingInterceptor"
> > interface="org.apache.hivemind.ServiceInterceptorFactory">
> >       <create-instance
> > class="my.package.ProxyJAMonTimingInterceptorFactory"/>
> > </service>
> >
> >
> >
> > And later on, on a "normal service" I add this after the invoke-factory
> > element
> >
> > <interceptor service-id="ProxyTimingInterceptor">
> >       <method include="*"/>
> >       <method exclude="test"/>
> > </interceptor>
> >
> > what am I missing out on?
> >
> >
> >
> >>Actually, I think that might happen when you omit the schema
> >>altogether. Can you paste in your hivemodule.xml file (or the relevant
> >>pieces of it)?
> >>
> >>-----Original Message-----
> >>From: James Carman [mailto:[EMAIL PROTECTED]
> >>Sent: Thursday, May 12, 2005 7:26 AM
> >>To: [email protected]
> >>Subject: RE: interceptor: getting name of implemened interface
> >>
> >>
> >>Did you make sure you called addElement() at the end of your schema
> >>rules?
> >>
> >>-----Original Message-----
> >>From: David J. M. Karlsen [mailto:[EMAIL PROTECTED]
> >>Sent: Thursday, May 12, 2005 7:18 AM
> >>To: [email protected]
> >>Subject: Re: interceptor: getting name of implemened interface
> >>
> >>
> >>Knut Wannheden wrote:
> >>
> >>
> >>>David,
> >>>
> >>>Yes all method calls will go through the interceptor you add. It is
> >>>thus up to the interceptor to decide whether it should actually do
> >>>something or just pass on to the delegate. For the interceptor to know
> >>>what to do the interceptor factory must pass the parameters (in your
> >>>case <include> and <exclude>) on (e.g. through the interceptor
> >>>constructor).
> >>>
> >>>If you like you can also take a look at HiveMind's logging interceptor
> >>>LoggingInterceptorFactory. It uses Javassist to create an interceptor
> >>>class and an instance thereof on the fly. The <include> and <exclude>
> >>>method matching logic is encapsulated directly by this generated
> >>>class. You may of course also prefer the dynamic proxy approach and
> >>>code a generic interceptor class yourself. YMMV.
> >>
> >>
> >>I took a look at the class - but I'm a little confused over this:
> >>
> >>In the LoggingInterceptorFactory you get a List of parameters (the
> >>include/exclude patterns), and the elements in the list are cast to
> >>MethodContribution objects.
> >>
> >>In my interceptorfactory I receive a List of parameters containing
> >>org.apache.hivemind.impl.ElementImpl objects.
> >>
> >>Howcome?
> >>
> >>
> >
> >
> >
> 
> --
> David J. M. Karlsen - +47 90 68 22 43
> http://www.davidkarlsen.com
> http://mp3.davidkarlsen.com
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to