Hi there, to me it seems the error message indicates that you don't have a method "setSpringContext" in your CurrentFooEncoder. I think hivemind will try to set that property using that method. Or maybe you need a constructor with an argument of that type.
For a slightly different approach you might want to look at the tapestry-spring library at http://howardlewisship.com/tapestry-javaforge/tapestry-spring/. That will allow you to reference objects defined in your spring application context in your hivemodule.xml using the spring: - prefix. I'm not sure how the syntax would be for your encoders, though. I think you could just create an instance, and within the class you can inject spring objects using the @InjectSpring annotation. I use it in some places, works great, just can't seem to remember the syntactical sugar.. Hope this helps anyway, Lutz On 8/7/07, Olle Hallin <[EMAIL PROTECTED]> wrote: > Hi again, > > I tried your suggestion, but I get an ApplicationRuntimeException: No > property editor exists for property springContext of class > foo.web.CurrentFooEncoder. > > What else must I do? It smells writing some glue code... > > Regards, > Olle > > > 2007/8/7, Richard Kirby <[EMAIL PROTECTED]>: > > > > Hi Olle, > > > > Try > > > > <encoder id="CurrentFooEncoder" > > object="instance:CurrentFooEncoder,springContext=spring:springContext" /> > > > > Basically the instance: allows for properties to be set using comma > > separated property=value > > > > Hope that works for you > > > > Richard > > > > Olle Hallin wrote: > > > Hi! > > > > > > I have written a simple (Tapestry4) custom service encoder > > > (CurrentFooEncoder) which works ok for now. It inserts/removes "/foo" > > first > > > in the encoding.getServletPath(). > > > > > > It is declared in hivemodule.xml like > > > > > > <contribution configuration-id="tapestry.url.ServiceEncoders"> > > > <page-service-encoder id="page" extension="html" service="page" /> > > > <page-service-encoder id="external" extension="ehtml" > > service="external" > > > /> > > > <direct-service-encoder id="direct" stateless-extension="direct" > > > stateful-extension="sdirect" /> > > > <asset-encoder id="asset" path="/assets" /> > > > <extension-encoder id="extension" extension="svc" after="*" /> > > > > > > <encoder id="CurrentFooEncoder" object="instance:CurrentFooEncoder" > > > before="*" /> > > > </contribution> > > > > > > Now I wan't my CurrentFooEncoder to do some useful work, for which it > > needs > > > my Spring context. How do I achieve that? > > > I have already have a HiveMind service-point called > > SpringContextFactory. > > > > > > I guess that I shall write something magic in the object attribute, but > > > what? > > > > > > Regards, > > > Olle Hallin > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > Olle Hallin M.Sc. > +46 70 6653071 > [EMAIL PROTECTED] > www.hit.se > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]