Its looked like resources are not injected when "javax.inject.Inject" is used.

Denis

Jun 14, 2012 v 2:31 AM, Howard Lewis Ship:

> I'm not seeing anything here.  How about you put your source into a Gist (
> gist.github.com) and paste the URL here?
> 
> On Wed, Jun 13, 2012 at 3:12 PM, Muhammad Gelbana <m.gelb...@gmail.com>wrote:
> 
>> That's all the source for My.java. Tapestry version is 5.3
>> I intend to upgrade to the latest version very soon anyway.
>> 
>> On Wed, Jun 13, 2012 at 11:17 PM, Howard Lewis Ship <hls...@gmail.com
>>> wrote:
>> 
>>> What version of Tapestry is this?  Can we see more source for
>>> com.skycomm.charts.My?
>>> 
>>> 
>>> 
>>> 
>>> On Wed, Jun 13, 2012 at 11:41 AM, Muhammad Gelbana <m.gelb...@gmail.com
>>>> wrote:
>>> 
>>>> The exception shows that I'm importing "org.apache.log4j.Logger" which
>>> is a
>>>> mistake but the same happens if I fix the import to become
>>>> "org.slf4j.Logger"
>>>> 
>>>> The long exception stack trace again:
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:127)-[main] No
>> service
>>>> implements the interface *org.slf4j.Logger*.
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:128)-[main]
>> Operations
>>>> trace:
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 1]
>>>> Realizing service RegistryStartup
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 2]
>>>> Instantiating service RegistryStartup implementation via
>>>> org.apache.tapestry5.ioc.internal.services.RegistryStartup(Logger,
>> List)
>>>> (at RegistryStartup.java:36) via
>>>> org.apache.tapestry5.ioc.services.TapestryIOCModule.bind(ServiceBinder)
>>> (at
>>>> TapestryIOCModule.java:49)
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 3]
>>>> Creating plan to instantiate
>>>> org.apache.tapestry5.ioc.internal.services.RegistryStartup via public
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.RegistryStartup(org.slf4j.Logger,java.util.List)
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 4]
>>>> Determining injection value for parameter #2 (java.util.List)
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 5]
>>>> Collecting ordered configuration for service RegistryStartup
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 6]
>>>> Invoking
>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>> Logger) (at AppModule.java:315)
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 7]
>>>> Reloading class com.skycomm.charts.My.
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 8]
>>>> Creating plan to instantiate com.skycomm.charts.My via public
>>>> com.skycomm.charts.My()
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [ 9]
>>>> Calculating possible injection value for field
>> com.skycomm.charts.My.log
>>>> (org.slf4j.Logger)
>>>> 13-06-12 20:39:21 ERROR (OperationTrackerImpl.java:137)-[main] [10]
>>>> Resolving object of type org.slf4j.Logger using MasterObjectProvider
>>>> 13-06-12 20:39:23 ERROR
>>>> (RecursiveServiceCreationCheckWrapper.java:64)-[main] Construction of
>>>> service RegistryStartup failed: Error invoking service contribution
>>> method
>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>> Logger): No service implements the interface org.slf4j.Logger.
>>>> java.lang.RuntimeException: Error invoking service contribution method
>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>> Logger): No service implements the interface org.slf4j.Logger.
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:130)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:80)
>>>> at
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl$9.run(RegistryImpl.java:630)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.addToOrderedConfiguration(RegistryImpl.java:626)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getOrderedConfiguration(RegistryImpl.java:480)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:110)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:107)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getOrderedConfiguration(ServiceResourcesImpl.java:105)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.getOrderedConfiguration(AbstractServiceCreator.java:123)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.access$200(AbstractServiceCreator.java:35)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator$1.findResource(AbstractServiceCreator.java:103)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.DelegatingInjectionResources.findResource(DelegatingInjectionResources.java:38)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:231)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:50)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:289)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:286)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:293)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1488)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1483)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1480)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
>>>> at $Runnable_1a59e03880f0.delegate(Unknown Source)
>>>> at $Runnable_1a59e03880f0.run(Unknown Source)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
>>>> at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:118)
>>>> at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>>>> at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>> at
>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
>>>> at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
>>>> at
>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
>>>> at
>>>> 
>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
>>>> at
>> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
>>>> at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>> at
>>>> 
>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>>>> at org.mortbay.jetty.Server.doStart(Server.java:224)
>>>> at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>> at runjettyrun.Bootstrap.main(Bootstrap.java:82)
>>>> Caused by: org.apache.tapestry5.ioc.internal.OperationException: No
>>> service
>>>> implements the interface org.slf4j.Logger.
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl.provide(MasterObjectProviderImpl.java:45)
>>>> at $MasterObjectProvider_1a59e03880c0.provide(Unknown Source)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:868)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:57)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$25.run(InternalUtils.java:1567)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
>>>> at
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:1116)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.extendPlanForInjectedFields(InternalUtils.java:1534)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$200(InternalUtils.java:50)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1496)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1483)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1480)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ReloadableServiceImplementationObjectCreator.createInstance(ReloadableServiceImplementationObjectCreator.java:52)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator$1.invoke(AbstractReloadableObjectCreator.java:127)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator.createInstance(AbstractReloadableObjectCreator.java:121)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator.createObject(AbstractReloadableObjectCreator.java:113)
>>>> at $IMyInterface_1a59e0388101.delegate(Unknown Source)
>>>> at $IMyInterface_1a59e0388101.a(Unknown Source)
>>>> at $IMyInterface_1a59e03880fc.a(Unknown Source)
>>>> at
>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(AppModule.java:316)
>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> at
>>>> 
>>>> 
>>> 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>> at
>>>> 
>>>> 
>>> 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:120)
>>>> ... 69 more
>>>> Caused by: java.lang.RuntimeException: No service implements the
>>> interface
>>>> org.slf4j.Logger.
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getServiceByTypeAlone(RegistryImpl.java:661)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getServiceByTypeAndMarkers(RegistryImpl.java:681)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:640)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getService(ObjectLocatorImpl.java:47)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl$1.invoke(MasterObjectProviderImpl.java:60)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>> ... 108 more
>>>> 2012-06-13 20:39:23.578:WARN::failed app: java.lang.RuntimeException:
>>>> Exception constructing service 'RegistryStartup': Error invoking
>> service
>>>> contribution method
>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>> Logger): No service implements the interface org.slf4j.Logger.
>>>> 2012-06-13 20:39:23.578:WARN::Failed startup of context
>>>> org.mortbay.jetty.webapp.WebAppContext@5fb57890
>>>> {/,E:\Workspace\Eclipse\IpKaizen
>>>> - Web\src\main\webapp}
>>>> java.lang.RuntimeException: Exception constructing service
>>>> 'RegistryStartup': Error invoking service contribution method
>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>> Logger): No service implements the interface org.slf4j.Logger.
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:75)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
>>>> at $Runnable_1a59e03880f0.delegate(Unknown Source)
>>>> at $Runnable_1a59e03880f0.run(Unknown Source)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
>>>> at
>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
>>>> at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:118)
>>>> at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>>>> at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>> at
>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
>>>> at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
>>>> at
>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
>>>> at
>>>> 
>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
>>>> at
>> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
>>>> at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>> at
>>>> 
>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>>>> at org.mortbay.jetty.Server.doStart(Server.java:224)
>>>> at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>> at runjettyrun.Bootstrap.main(Bootstrap.java:82)
>>>> 
>>>> 
>>>> On Wed, Jun 13, 2012 at 8:24 PM, Muhammad Gelbana <m.gelb...@gmail.com
>>>>> wrote:
>>>> 
>>>>> The is nothing really to show.
>>>>> 
>>>>> *My*
>>>>> package com.skycomm.charts;
>>>>> import javax.inject.Inject;
>>>>> import org.apache.log4j.Logger;
>>>>> 
>>>>> public class My implements IMyInterface {
>>>>>    @Inject
>>>>>    private Logger log;
>>>>> 
>>>>>    public My() {
>>>>>        System.out.println(log);
>>>>>        log.info("Logger injected in service using
>>>> @javax.inject.Inject");
>>>>>    }
>>>>> 
>>>>>    @Override
>>>>>    public void a() {
>>>>>        System.out.println("a");
>>>>>    }
>>>>> };
>>>>> 
>>>>> *IMyInterface*
>>>>> package com.skycomm.charts;
>>>>> public interface IMyInterface {
>>>>>    void a();
>>>>> }
>>>>> 
>>>>> *AppModule portion*
>>>>> public void contributeRegistryStartup(OrderedConfiguration<Runnable>
>>>>> configuration, final Logger log) {
>>>>> m.a();
>>>>> // Other stuff
>>>>> }
>>>>> 
>>>>> *AppModule bind method*
>>>>> public static void bind(ServiceBinder binder) {
>>>>> //Many other binds
>>>>> binder.bind(IMyInterface.class, My.class); //I originally had it with
>>>>> .eagerLoad() because that's what I actually need, but I removed it
>>> after
>>>> I
>>>>> suspected it to be causing the probelem, although now after I removed
>>> it,
>>>>> it still happens.
>>>>> }
>>>>> 
>>>>> *Very long exception*
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:127)-[main] No
>>> service
>>>>> implements the interface org.apache.log4j.Logger.
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:128)-[main]
>>> Operations
>>>>> trace:
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 1]
>>>>> Realizing service RegistryStartup
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 2]
>>>>> Instantiating service RegistryStartup implementation via
>>>>> org.apache.tapestry5.ioc.internal.services.RegistryStartup(Logger,
>>> List)
>>>>> (at RegistryStartup.java:36) via
>>>>> 
>> org.apache.tapestry5.ioc.services.TapestryIOCModule.bind(ServiceBinder)
>>>> (at
>>>>> TapestryIOCModule.java:49)
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 3]
>>>>> Creating plan to instantiate
>>>>> org.apache.tapestry5.ioc.internal.services.RegistryStartup via public
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.RegistryStartup(org.slf4j.Logger,java.util.List)
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 4]
>>>>> Determining injection value for parameter #2 (java.util.List)
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 5]
>>>>> Collecting ordered configuration for service RegistryStartup
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 6]
>>>>> Invoking
>>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>>> Logger) (at AppModule.java:315)
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 7]
>>>>> Reloading class com.skycomm.charts.My.
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 8]
>>>>> Creating plan to instantiate com.skycomm.charts.My via public
>>>>> com.skycomm.charts.My()
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [ 9]
>>>>> Calculating possible injection value for field
>>> com.skycomm.charts.My.log
>>>>> (org.apache.log4j.Logger)
>>>>> 13-06-12 20:15:34 ERROR (OperationTrackerImpl.java:137)-[main] [10]
>>>>> Resolving object of type org.apache.log4j.Logger using
>>>> MasterObjectProvider
>>>>> 13-06-12 20:15:36 ERROR
>>>>> (RecursiveServiceCreationCheckWrapper.java:64)-[main] Construction of
>>>>> service RegistryStartup failed: Error invoking service contribution
>>>> method
>>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>>> Logger): No service implements the interface org.apache.log4j.Logger.
>>>>> java.lang.RuntimeException: Error invoking service contribution
>> method
>>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>>> Logger): No service implements the interface org.apache.log4j.Logger.
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:130)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:80)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl$9.run(RegistryImpl.java:630)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.addToOrderedConfiguration(RegistryImpl.java:626)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getOrderedConfiguration(RegistryImpl.java:480)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:110)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:107)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getOrderedConfiguration(ServiceResourcesImpl.java:105)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.getOrderedConfiguration(AbstractServiceCreator.java:123)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.access$200(AbstractServiceCreator.java:35)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractServiceCreator$1.findResource(AbstractServiceCreator.java:103)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.DelegatingInjectionResources.findResource(DelegatingInjectionResources.java:38)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:231)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:50)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:289)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$4.invoke(InternalUtils.java:286)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:293)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1488)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1483)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1480)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
>>>>> at $Runnable_190859b1af3c.delegate(Unknown Source)
>>>>> at $Runnable_190859b1af3c.run(Unknown Source)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
>>>>> at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:118)
>>>>> at
>>> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>>>>> at
>>>> 
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
>>>>> at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
>>>>> at
>>>>> 
>>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
>>>>> at
>>>> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
>>>>> at
>>>> 
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>>> at
>>>>> 
>>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>>>>> at org.mortbay.jetty.Server.doStart(Server.java:224)
>>>>> at
>>>>> 
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>>> at runjettyrun.Bootstrap.main(Bootstrap.java:82)
>>>>> Caused by: org.apache.tapestry5.ioc.internal.OperationException: No
>>>>> service implements the interface org.apache.log4j.Logger.
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl.provide(MasterObjectProviderImpl.java:45)
>>>>> at $MasterObjectProvider_190859b1af08.provide(Unknown Source)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:868)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:57)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$25.run(InternalUtils.java:1567)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:1116)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.extendPlanForInjectedFields(InternalUtils.java:1534)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$200(InternalUtils.java:50)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1496)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils$23.invoke(InternalUtils.java:1483)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1480)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ReloadableServiceImplementationObjectCreator.createInstance(ReloadableServiceImplementationObjectCreator.java:52)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator$1.invoke(AbstractReloadableObjectCreator.java:127)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator.createInstance(AbstractReloadableObjectCreator.java:121)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator.createObject(AbstractReloadableObjectCreator.java:113)
>>>>> at $IMyInterface_190859b1af49.delegate(Unknown Source)
>>>>> at $IMyInterface_190859b1af49.a(Unknown Source)
>>>>> at $IMyInterface_190859b1af44.a(Unknown Source)
>>>>> at
>>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(AppModule.java:316)
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>> at
>>>>> 
>>>> 
>>> 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>> at
>>>>> 
>>>> 
>>> 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:120)
>>>>> ... 69 more
>>>>> Caused by: java.lang.RuntimeException: No service implements the
>>>> interface
>>>>> org.apache.log4j.Logger.
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getServiceByTypeAlone(RegistryImpl.java:661)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getServiceByTypeAndMarkers(RegistryImpl.java:681)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:640)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getService(ObjectLocatorImpl.java:47)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl$1.invoke(MasterObjectProviderImpl.java:60)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>>>>> ... 108 more
>>>>> 2012-06-13 20:15:36.602:WARN::failed app: java.lang.RuntimeException:
>>>>> Exception constructing service 'RegistryStartup': Error invoking
>>> service
>>>>> contribution method
>>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>>> Logger): No service implements the interface org.apache.log4j.Logger.
>>>>> 2012-06-13 20:15:36.602:WARN::Failed startup of context
>>>>> org.mortbay.jetty.webapp.WebAppContext@428c6e04
>>>> {/,E:\Workspace\Eclipse\IpKaizen
>>>>> - Web\src\main\webapp}
>>>>> java.lang.RuntimeException: Exception constructing service
>>>>> 'RegistryStartup': Error invoking service contribution method
>>>>> 
>>>> 
>>> 
>> com.skycomm.cth.services.AppModule.contributeRegistryStartup(OrderedConfiguration,
>>>>> Logger): No service implements the interface org.apache.log4j.Logger.
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:75)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
>>>>> at $Runnable_190859b1af3c.delegate(Unknown Source)
>>>>> at $Runnable_190859b1af3c.run(Unknown Source)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
>>>>> at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:118)
>>>>> at
>> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>>>>> at
>>>>> 
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
>>>>> at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
>>>>> at
>>>>> 
>>>> 
>>> 
>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
>>>>> at
>>>>> 
>>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
>>>>> at
>>> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
>>>>> at
>>>>> 
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>>> at
>>>>> 
>>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>>>>> at org.mortbay.jetty.Server.doStart(Server.java:224)
>>>>> at
>>>> 
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>>>>> at runjettyrun.Bootstrap.main(Bootstrap.java:82)
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> On Wed, Jun 13, 2012 at 6:27 PM, Howard Lewis Ship <hls...@gmail.com
>>>>> wrote:
>>>>> 
>>>>>> On Wed, Jun 13, 2012 at 7:12 AM, Muhammad Gelbana <
>>> m.gelb...@gmail.com>
>>>>>> wrote:
>>>>>>> I faced the same problem and I'm using the constructor's injection
>>>>>> instead.
>>>>>>> But why wouldn't the deprecated @InjectResource nor the @Inject
>>>>>> annotation
>>>>>>> work ? I'm using tapestry5.3.1
>>>>>> 
>>>>>> Without seeing the code, there's no way to answer.
>>>>>> 
>>>>>> http://catb.org/esr/faqs/smart-questions.html
>>>>>> 
>>>>>>> 
>>>>>>> On Wed, Dec 29, 2010 at 1:33 AM, Howard Lewis Ship <
>>> hls...@gmail.com>
>>>>>> wrote:
>>>>>>> 
>>>>>>>> You're seeing the evolution of the framework.
>>>>>>>> 
>>>>>>>> Originally, there was only constructor injection for services.
>>> This
>>>> is
>>>>>>>> because we did not, originally, use a special class loader for
>>>> service
>>>>>>>> implementations and we were trying to avoid reflection.
>>>>>>>> 
>>>>>>>> Components always used a special class loader, which allowed for
>>>> proper
>>>>>>>> injection (including intercepting attempted updates to the
>> fields,
>>> to
>>>>>> make
>>>>>>>> the read-only).
>>>>>>>> 
>>>>>>>> Later (5.1 I believe) we started allowing injection into fields
>> of
>>>>>> service
>>>>>>>> implementation, using reflection.
>>>>>>>> 
>>>>>>>> However, there's an ambiguity.  Normally, once Tapestry selects a
>>>>>>>> constructor, it provides an injection value for each parameter,
>>> based
>>>>>> on
>>>>>>>> type (and other annotation).
>>>>>>>> 
>>>>>>>> Normally, a component parameter of type Logger is recognized, by
>>>> type,
>>>>>> as a
>>>>>>>> service resource (i.e., not another service, but a unique value
>>>>>> constructed
>>>>>>>> just for this service).  Adding the @Inject annotation tells
>>> Tapestry
>>>>>> to
>>>>>>>> ignore it as a service resource and resolve it as an ordinary
>>>> injection
>>>>>>>> (i.e., a service, or an object obtained from the
>>>> MasterObjectProvider).
>>>>>>>> 
>>>>>>>> For fields, each field needs an @Inject annotation (Tapestry
>>> ignores
>>>>>> most
>>>>>>>> fields and only performs injection on the ones that need it).
>> But
>>>>>>>> that ambiguity ... @Inject should also work the same for a field
>> as
>>>> it
>>>>>> does
>>>>>>>> for a parameter (meaning, resolve as a service, not a resource).
>>> The
>>>>>>>> solution was yet another annotation, @InjectResource, which is
>> only
>>>> for
>>>>>>>> fields, and indicates that Tapestry should perform a resource
>>>>>> injection on
>>>>>>>> the field, as it would for a constructor parameter.
>>>>>>>> 
>>>>>>>> Confusing?  Yes, just a touch. It's one of the reasons I prefer
>>>>>> constructor
>>>>>>>> injection.
>>>>>>>> 
>>>>>>>> On Tue, Dec 28, 2010 at 3:15 PM, Thiago H. de Paula Figueiredo <
>>>>>>>> thiag...@gmail.com> wrote:
>>>>>>>> 
>>>>>>>>> On Tue, 28 Dec 2010 21:11:58 -0200, Josh Canfield <
>>>>>>>> joshcanfi...@gmail.com>
>>>>>>>>> wrote:
>>>>>>>>> 
>>>>>>>>> Weird. Has that always been true?
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> No. I can't remember when, though.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> I'm also confused
>>>>>>>>>> why @Inject would work with Logger in a Component, but not in
>> a
>>>>>> service.
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Injection of some object types are handled by class
>>>> transformations,
>>>>>> not
>>>>>>>>> IoC.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> --
>>>>>>>>> Thiago H. de Paula Figueiredo
>>>>>>>>> Independent Java, Apache Tapestry 5 and Hibernate consultant,
>>>>>> developer,
>>>>>>>>> and instructor
>>>>>>>>> Owner, Ars Machina Tecnologia da Informação Ltda.
>>>>>>>>> http://www.arsmachina.com.br
>>>>>>>>> 
>>>>>>>>> 
>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>>>>>>>> For additional commands, e-mail:
>> users-h...@tapestry.apache.org
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> --
>>>>>>>> Howard M. Lewis Ship
>>>>>>>> 
>>>>>>>> Creator of Apache Tapestry
>>>>>>>> 
>>>>>>>> The source for Tapestry training, mentoring and support. Contact
>> me
>>>> to
>>>>>>>> learn
>>>>>>>> how I can get you up and productive in Tapestry fast!
>>>>>>>> 
>>>>>>>> (971) 678-5210
>>>>>>>> http://howardlewisship.com
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> --
>>>>>>> *Regards,*
>>>>>>> *Muhammad Gelbana
>>>>>>> Java Developer*
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> --
>>>>>> Howard M. Lewis Ship
>>>>>> 
>>>>>> Creator of Apache Tapestry
>>>>>> 
>>>>>> The source for Tapestry training, mentoring and support. Contact me
>> to
>>>>>> learn how I can get you up and productive in Tapestry fast!
>>>>>> 
>>>>>> (971) 678-5210
>>>>>> http://howardlewisship.com
>>>>>> 
>>>>>> 
>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>>>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>>>> 
>>>>>> 
>>>>> 
>>>>> 
>>>>> --
>>>>> *Regards,*
>>>>> *Muhammad Gelbana
>>>>> Java Developer*
>>>>> 
>>>>> 
>>>> 
>>>> 
>>>> --
>>>> *Regards,*
>>>> *Muhammad Gelbana
>>>> Java Developer*
>>>> 
>>> 
>>> 
>>> 
>>> --
>>> Howard M. Lewis Ship
>>> 
>>> Creator of Apache Tapestry
>>> 
>>> The source for Tapestry training, mentoring and support. Contact me to
>>> learn how I can get you up and productive in Tapestry fast!
>>> 
>>> (971) 678-5210
>>> http://howardlewisship.com
>>> 
>> 
>> 
>> 
>> --
>> *Regards,*
>> *Muhammad Gelbana
>> Java Developer*
>> 
> 
> 
> 
> -- 
> Howard M. Lewis Ship
> 
> Creator of Apache Tapestry
> 
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
> 
> (971) 678-5210
> http://howardlewisship.com


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to