ok, thanks Sean. I close the issue. Best regards, Thierry Boileau
2013/11/15 Sean Hogan <s...@clixtec.ca> > Never mind. Like an idiot I had two beans named "metadataResource". I > thought Spring would whine about that, but apparently not. :-( > > (There may still be an issue with SpringFinder, but not from my flawed > analysis.) > > Thanks, > Sean > > > On 13-11-15 01:31 PM, Sean Hogan wrote: > > Hi, > > I believe I may have found a bug with the way SpringFinder works in > Restlet 2.1.4. > > I have two Application subclasses, each with one Router. Call them app1 > and app2, mapped in my servlet-based web app to "/app1" and "/app2". Both > apps define a template "/metadata" mapped to their own private Resource > subclasses (Metadata1Resource and Metadata2Resource). app2 happens to be > initialized after app1. > > I find that invoking /app*1*/metadata instantiates a Metadata*2*Resource. > Looking into how this happens, I believe the problem is that SpringFinder > is a singleton, and therefore gets attached to both Routers in order of > initialization. Since app2 was initialized later, it wins, and the > /metadata is looked up relative to that Router. > > The bit of Spring context for app1 looks like this: > > <bean id="router1" class="org.restlet.ext.spring.SpringRouter"> > <property name="attachments"> > <map> > <entry key="/metadata"> <!-- GET --> > <bean class="org.restlet.ext.spring.SpringFinder"> > <lookup-method name="create" > bean="metadataResource" /> > </bean> > </entry> > ... > </bean> > > <bean id="metadataResource" class="...Metadata1Resource" > scope="prototype" /> > > and similarly for app2. Both apps are loaded into the same Spring context. > > If I'm understanding things correctly, this is a fundamental issue in > using SpringFinder with multiple Routers. Can anyone give me workaround? > I absolutely need my Resource instances to be created by Spring so they get > autowired. > > Thanks, > Sean > > > ------------------------------------------------------ http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=3068572