I tried injecting an ObjectProvider into my AppModule buildService method, but it doesn't work. Tapestry reports that Service id "ObjectLocator" isn't defined by any module. I see that the MasterObjectProvider is available, but I don't think that's what I want.
Here's my code: static public ServiceFactory buildServiceFactory(@InjectService("ObjectLocator") ObjectLocator objectLocator) throws Exception { .... } Any suggestions? ----- Original Message ---- From: Howard Lewis Ship <[EMAIL PROTECTED]> To: Tapestry users <users@tapestry.apache.org> Sent: Wednesday, May 16, 2007 2:55:44 PM Subject: Re: Using registry in a factory You can't get the Registry, but you can get an ObjectLocator, which includes all the key methods of Registry. This can be injected into your ServiceFactory implementation. On 5/16/07, Mark Addleman <[EMAIL PROTECTED]> wrote: > > I'd like to use tapestry-ioc outside the context of a web app but I'm > running into a conceptual problem. I need to create and destroy objects in > response to asynchronous events, so I've defined the following interface: > > public interface ServiceFactory > { > public Service createService(Registry registry); > } > > I pass the registry object so the service factory can look up all the > necessary services in order to construct the particular service. > > I'd like the event publisher to be in the Tapestry Registry with the > following interface: > > public interface EventPublisher > { > public void addServiceFactory(ServiceFactory factory); > } > > The problem is, I don't know how to get the registry object into the > EventPublisher's implementation. Ideally, I'd like to inject the Registry > into the EventPublisherImpl's constructor, but I know that's impossible > under 5.0.4's implementation. What do you think about enhancing injection > to support this kind of bootstrapping? > -- Howard M. Lewis Ship TWD Consulting, Inc. Independent J2EE / Open-Source Java Consultant Creator and PMC Chair, Apache Tapestry Creator, Apache HiveMind Professional Tapestry training, mentoring, support and project work. http://howardlewisship.com