hi michael, happened to me several times too :)
first you could try to define your services as proxy: from: binder.bind(HttpdRequestSecurityManager.class).withId("HttpdRequestSecurityManager"); to: binder.bind(RequestSecurityManager.class, HttpdRequestSecurityManager.class).withId("HttpdRequestSecurityManager"); if this is not enough try to break the dependency cycle by injecting the ObjectLocator and creating the proxy manually eg: configuration.add( AliasContribution.create( RequestSecurityManager.class, locator.proxy( RequestSecurityManager.class, HttpdRequestSecurityManager.class)) ); see also following post http://tapestry-user.markmail.org/search/?q=kristian+marinkovic#query:kristian%20marinkovic%20order%3Adate-backward+page:1+mid:pmmti5eoegosg2n5+state:results g, kris Michael Gerzabek <[EMAIL PROTECTED]> 19.09.2008 19:32 Bitte antworten an "Tapestry users" <users@tapestry.apache.org> An users@tapestry.apache.org Kopie Thema IoC Question with Alias Hi, I have a problem with the contributions to the alias service. The AppModule is ... public static void bind( ServiceBinder binder ) { binder.bind( SiteDispatcher.class ).withId( "SiteDispatcher" ); binder.bind( SiteServiceImpl.class ).withId( "SiteService" ); binder.bind( HttpdRequestSecurityManager.class ).withId( "HttpdRequestSecurityManager" ); binder.bind( SiteBaseURLSource.class ).withId( "SiteBaseURLSource" ); } @SuppressWarnings( "unchecked" ) public void contributeAlias( Configuration<AliasContribution> configuration, @InjectService( "HttpdRequestSecurityManager" ) RequestSecurityManager manager, @InjectService( "SiteBaseURLSource" ) BaseURLSource baseUrlSource ) { configuration.add( AliasContribution.create( BaseURLSource.class, baseUrlSource ) ); configuration.add( AliasContribution.create( RequestSecurityManager.class, manager ) ); } The constructors of the services are ... public SiteServiceImpl( RequestGlobals globals, ApplicationGlobals application, Session session, Logger logger, Collection<String> contributions, SymbolSource symbols ) { ... } public HttpdRequestSecurityManager( Request request, Response response, MetaDataLocator locator, RequestPageCache requestPageCache, @InjectService("SiteBaseURLSource") BaseURLSource baseURLSource, SiteService site ) { ... } public SiteBaseURLSource( SiteService site ) { ... } I get the [ERROR] Alias Construction of service Alias failed: Error invoking service builder method org.apache.tapestry5.services.TapestryModule.build(Logger, String, AliasManager, Collection) (at TapestryModule.java:205) (for service 'Alias'): Error invoking service contribution method com.flexibelinstitut.tapestry5.site.SiteModule.contributeAlias(Configuration, RequestSecurityManager, BaseURLSource): Error building service proxy for service 'HttpdRequestSecurityManager' (at com.flexibelinstitut.tapestry5.site.services.internal.HttpdRequestSecurityManager(Request, Response, MetaDataLocator, RequestPageCache, BaseURLSource, SiteService) (at HttpdRequestSecurityManager.java:26)): Error invoking constructor com.flexibelinstitut.tapestry5.site.services.internal.HttpdRequestSecurityManager(Request, Response, MetaDataLocator, RequestPageCache, BaseURLSource, SiteService) (at HttpdRequestSecurityManager.java:26) (for service 'HttpdRequestSecurityManager'): Exception constructing service 'Alias': Construction of service 'Alias' has failed due to recursion: the service depends on itself in some way. Please check org.apache.tapestry5.services.TapestryModule.build(Logger, String, AliasManager, Collection) (at TapestryModule.java:205) for references to another service that is itself dependent on service 'Alias'. And I don't even have a clue where to look. I tried a lot of different version with @Inject, with @InjectService("..") on the constructors the contributeAlias(..) method. But none of them seems to work. Any ideas? /M --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]