Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Won't Fix
-
5.0.5
-
None
-
None
-
windows XP, jetty 5
Description
adding a contribution like this fails:
public static void contributeTypeCoercer(Configuration<CoercionTuple> configuration, final Session session)
works with following:
public static void contributeTypeCoercer(Configuration<CoercionTuple> configuration,@InjectService("Session") final Session session)
the issue is new in 5.0.5-SNAPSHOT
the version is built localy from latest svn source
it seems to be related to: TAPESTRY-1425
exception follows:
15:22:00.546 ERROR! [main] org.apache.tapestry.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:64) >50> Construction of service TypeCoercer failed: Error invoking constructor org.apache.tapestry.ioc.internal.services.TypeCoercerImpl(Collection) (at TypeCoercerImpl.java:101) (for service 'TypeCoercer'): Error invoking service contribution method hr.crup.cbapp.services.AppModule.contributeTypeCoercer(Configuration, Session): 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.tapestry.services.TapestryModule.build(Log, String, AliasManager, Collection) (at TapestryModule.java:255) for references to another service that is itself dependent on service 'Alias'.
java.lang.RuntimeException: Error invoking constructor org.apache.tapestry.ioc.internal.services.TypeCoercerImpl(Collection) (at TypeCoercerImpl.java:101) (for service 'TypeCoercer'): Error invoking service contribution method hr.crup.cbapp.services.AppModule.contributeTypeCoercer(Configuration, Session): 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.tapestry.services.TapestryModule.build(Log, String, AliasManager, Collection) (at TapestryModule.java:255) for references to another service that is itself dependent on service 'Alias'.
at org.apache.tapestry.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:65)
at org.apache.tapestry.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:31)
at org.apache.tapestry.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:49)
at org.apache.tapestry.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
at org.apache.tapestry.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:61)
at $TypeCoercer_1131af2b520._delegate($TypeCoercer_1131af2b520.java)
at $TypeCoercer_1131af2b520.coerce($TypeCoercer_1131af2b520.java)
at org.apache.tapestry.ioc.internal.services.SymbolObjectProvider.provide(SymbolObjectProvider.java:53)
at $ObjectProvider_1131af2b524.provide($ObjectProvider_1131af2b524.java)
at $ObjectProvider_1131af2b51e.provide($ObjectProvider_1131af2b51e.java)
at org.apache.tapestry.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:550)
at org.apache.tapestry.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:557)
at org.apache.tapestry.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:50)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParameterValue(InternalUtils.java:217)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:248)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParametersForMethod(InternalUtils.java:226)
at org.apache.tapestry.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:68)
at org.apache.tapestry.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:31)
at org.apache.tapestry.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:49)
at org.apache.tapestry.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
at org.apache.tapestry.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
at org.apache.tapestry.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:61)
at $Alias_1131af2b521._delegate($Alias_1131af2b521.java)
at $Alias_1131af2b521.getObjectProvider($Alias_1131af2b521.java)
at org.apache.tapestry.services.TapestryModule$2.provide(TapestryModule.java:631)
at $ObjectProvider_1131af2b524.provide($ObjectProvider_1131af2b524.java)
at $ObjectProvider_1131af2b51e.provide($ObjectProvider_1131af2b51e.java)
at org.apache.tapestry.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:550)
at org.apache.tapestry.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:557)
at org.apache.tapestry.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:50)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParameterValue(InternalUtils.java:217)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:248)
at org.apache.tapestry.ioc.internal.ModuleImpl.instantiateModuleBuilder(ModuleImpl.java:327)
at org.apache.tapestry.ioc.internal.ModuleImpl.getModuleBuilder(ModuleImpl.java:273)
at org.apache.tapestry.ioc.internal.ServiceResourcesImpl.getModuleBuilder(ServiceResourcesImpl.java:106)
at org.apache.tapestry.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:60)
at org.apache.tapestry.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:31)
at org.apache.tapestry.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:49)
at org.apache.tapestry.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
at org.apache.tapestry.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
at org.apache.tapestry.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:61)
at $ServletApplicationInitializer_1131af2b51d._delegate($ServletApplicationInitializer_1131af2b51d.java)
at $ServletApplicationInitializer_1131af2b51d.initializeApplication($ServletApplicationInitializer_1131af2b51d.java)
at org.apache.tapestry.TapestryFilter.init(TapestryFilter.java:86)
at org.mortbay.jetty.servlet.FilterHolder.start(FilterHolder.java:71)
at org.mortbay.jetty.servlet.WebApplicationHandler.initializeServlets(WebApplicationHandler.java:310)
at org.mortbay.jetty.servlet.WebApplicationContext.doStart(WebApplicationContext.java:509)
at org.mortbay.util.Container.start(Container.java:72)
at org.mortbay.http.HttpServer.doStart(HttpServer.java:708)
at org.mortbay.util.Container.start(Container.java:72)
at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:282)
at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:104)
at com.iw.plugins.jettyrunner.PluginRunner.main(PluginRunner.java:75)
Caused by: java.lang.RuntimeException: Error invoking service contribution method hr.crup.cbapp.services.AppModule.contributeTypeCoercer(Configuration, Session): 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.tapestry.services.TapestryModule.build(Log, String, AliasManager, Collection) (at TapestryModule.java:255) for references to another service that is itself dependent on service 'Alias'.
at org.apache.tapestry.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:112)
at org.apache.tapestry.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:61)
at org.apache.tapestry.ioc.internal.RegistryImpl.addToUnorderedConfiguration(RegistryImpl.java:406)
at org.apache.tapestry.ioc.internal.RegistryImpl.getUnorderedConfiguration(RegistryImpl.java:288)
at org.apache.tapestry.ioc.internal.ServiceResourcesImpl.getUnorderedConfiguration(ServiceResourcesImpl.java:74)
at org.apache.tapestry.ioc.internal.AbstractServiceCreator.addUnorderedConfigurationParameter(AbstractServiceCreator.java:145)
at org.apache.tapestry.ioc.internal.AbstractServiceCreator.getParameterDefaultsWithConfiguration(AbstractServiceCreator.java:109)
at org.apache.tapestry.ioc.internal.ConstructorServiceCreator.getParameterDefaultsWithConfigurations(ConstructorServiceCreator.java:77)
at org.apache.tapestry.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:46)
... 52 more
Caused by: java.lang.RuntimeException: 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.tapestry.services.TapestryModule.build(Log, String, AliasManager, Collection) (at TapestryModule.java:255) for references to another service that is itself dependent on service 'Alias'.
at org.apache.tapestry.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:69)
at $Alias_1131af2b521._delegate($Alias_1131af2b521.java)
at $Alias_1131af2b521.getObjectProvider($Alias_1131af2b521.java)
at org.apache.tapestry.services.TapestryModule$2.provide(TapestryModule.java:631)
at $ObjectProvider_1131af2b524.provide($ObjectProvider_1131af2b524.java)
at $ObjectProvider_1131af2b51e.provide($ObjectProvider_1131af2b51e.java)
at org.apache.tapestry.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:550)
at org.apache.tapestry.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:557)
at org.apache.tapestry.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:50)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParameterValue(InternalUtils.java:217)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:248)
at org.apache.tapestry.ioc.internal.util.InternalUtils.calculateParametersForMethod(InternalUtils.java:226)
at org.apache.tapestry.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:95)
... 60 more
Caused by: java.lang.IllegalStateException: Construction of service 'Alias' has failed due to recursion: the service depends on itself in some way. Please check org.apache.tapestry.services.TapestryModule.build(Log, String, AliasManager, Collection) (at TapestryModule.java:255) for references to another service that is itself dependent on service 'Alias'.
at org.apache.tapestry.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:52)
at org.apache.tapestry.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:61)
... 72 more