no problem. stuff happens.. i was just sad that it was only me and not
reproducable. So if this fix goes in I can start to use the nightly
snapshot builds again. :)
On 1/15/09 9:17 AM, Howard M. Lewis Ship (JIRA) wrote:
[
https://issues.apache.org/jira/browse/TAP5-443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12664175#action_12664175
]
Howard M. Lewis Ship commented on TAP5-443:
-------------------------------------------
Sorry to dismiss this one out of hand, I was a bit worked up on some (many)
other issues.
Anyway, I can reproduce this now; I created a new empty project with dependency
on tapestry-upload.
ERROR] ioc.Registry Unable to locate a single service assignable to type
org.apache.tapestry5.services.ComponentEventResultProcessor with marker
annotation(s) org.apache.tapestry5.services.Traditional. All of the following
services match:
org.apache.tapestry5.internal.services.ComponentInstanceResultProcessor(Logger,
RequestPageCache, ActionRenderResponseGenerator) (at
ComponentInstanceResultProcessor.java:38) via
org.apache.tapestry5.services.TapestryModule.bind(ServiceBinder) (at
TapestryModule.java:148),
org.apache.tapestry5.services.TapestryModule.buildComponentEventResultProcessor(Map)
(at TapestryModule.java:1101).
[ERROR] ioc.Registry Operations trace:
[ERROR] ioc.Registry [ 1] Realizing service ComponentEventRequestHandler
[ERROR] ioc.Registry [ 2] Invoking
org.apache.tapestry5.services.TapestryModule.buildComponentEventRequestHandler(List,
Logger, ComponentEventRequestHandlerImpl) (at TapestryModule.java:1294)
[ERROR] ioc.Registry [ 3] Determining injection value for parameter #1
(java.util.List)
[ERROR] ioc.Registry [ 4] Collecting ordered configuration for service
ComponentEventRequestHandler
[ERROR] ioc.Registry [ 5] Invoking method
org.apache.tapestry5.upload.services.UploadModule.contributeComponentEventRequestHandler(OrderedConfiguration,
ObjectLocator) (at UploadModule.java:94).
[ERROR] ioc.Registry [ 6] Determining injection value for parameter #2
(org.apache.tapestry5.services.ComponentEventResultProcessor)
[ERROR] TapestryModule.ComponentEventRequestHandler Construction of service
ComponentEventRequestHandler failed: Error invoking service builder method
org.apache.tapestry5.services.TapestryModule.buildComponentEventRequestHandler(List,
Logger, ComponentEventRequestHandlerImpl) (at TapestryModule.java:1294) (for
service 'ComponentEventRequestHandler'): Error invoking service contribution
method
org.apache.tapestry5.upload.services.UploadModule.contributeComponentEventRequestHandler(OrderedConfiguration,
ObjectLocator): Error invoking constructor
org.apache.tapestry5.upload.internal.services.UploadExceptionFilter(MultipartDecoder,
ComponentEventResultProcessor, ComponentSource) (at
UploadExceptionFilter.java:40) (for service 'ComponentEventRequestHandler'):
Unable to locate a single service assignable to type
org.apache.tapestry5.services.ComponentEventResultProcessor with marker
annotation(s) org.apache.tapestry5.services.Traditional. All of the following
services match: or
g.apache.tapestry5.internal.services.ComponentInstanceResultProcessor(Logger,
RequestPageCache, ActionRenderResponseGenerator) (at
ComponentInstanceResultProcessor.java:38) via
org.apache.tapestry5.services.TapestryModule.bind(ServiceBinder) (at
TapestryModule.java:148),
org.apache.tapestry5.services.TapestryModule.buildComponentEventResultProcessor(Map)
(at TapestryModule.java:1101).
java.lang.RuntimeException: Error invoking service builder method
org.apache.tapestry5.services.TapestryModule.buildComponentEventRequestHandler(List,
Logger, ComponentEventRequestHandlerImpl) (at TapestryModule.java:1294) (for
service 'ComponentEventRequestHandler'): Error invoking service contribution
method
org.apache.tapestry5.upload.services.UploadModule.contributeComponentEventRequestHandler(OrderedConfiguration,
ObjectLocator): Error invoking constructor
org.apache.tapestry5.upload.internal.services.UploadExceptionFilter(MultipartDecoder,
ComponentEventResultProcessor, ComponentSource) (at
UploadExceptionFilter.java:40) (for service 'ComponentEventRequestHandler'):
Unable to locate a single service assignable to type
org.apache.tapestry5.services.ComponentEventResultProcessor with marker
annotation(s) org.apache.tapestry5.services.Traditional. All of the following
services match:
org.apache.tapestry5.internal.services.ComponentInstanceResultProcessor(Logger,
Request
PageCache, ActionRenderResponseGenerator) (at
ComponentInstanceResultProcessor.java:38) via
org.apache.tapestry5.services.TapestryModule.bind(ServiceBinder) (at
TapestryModule.java:148),
org.apache.tapestry5.services.TapestryModule.buildComponentEventResultProcessor(Map)
(at TapestryModule.java:1101).
at
org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
at
org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:910)
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:52)
at
org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:56)
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:68)
at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:910)
at
org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
at
org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:65)
at
$ComponentEventRequestHandler_11edb48cbe4.delegate($ComponentEventRequestHandler_11edb48cbe4.java)
at
$ComponentEventRequestHandler_11edb48cbe4.handle($ComponentEventRequestHandler_11edb48cbe4.java)
at
org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:140)
at $Dispatcher_11edb48cbe7.dispatch($Dispatcher_11edb48cbe7.java)
at $Dispatcher_11edb48cbdd.dispatch($Dispatcher_11edb48cbdd.java)
at
org.apache.tapestry5.services.TapestryModule$18.service(TapestryModule.java:1061)
at
org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
at $RequestHandler_11edb48cbde.service($RequestHandler_11edb48cbde.java)
at
org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:649)
at $RequestHandler_11edb48cbde.service($RequestHandler_11edb48cbde.java)
at
org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:639)
at $RequestHandler_11edb48cbde.service($RequestHandler_11edb48cbde.java)
at
org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:85)
at $RequestHandler_11edb48cbde.service($RequestHandler_11edb48cbde.java)
at foo.bar.services.AppModule$1.service(AppModule.java:84)
at $RequestFilter_11edb48cbda.service($RequestFilter_11edb48cbda.java)
at $RequestHandler_11edb48cbde.service($RequestHandler_11edb48cbde.java)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:81)
at
org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:83)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
at $RequestHandler_11edb48cbde.service($RequestHandler_11edb48cbde.java)
at $RequestHandler_11edb48cbd3.service($RequestHandler_11edb48cbd3.java)
at
org.apache.tapestry5.services.TapestryModule$17.service(TapestryModule.java:1039)
at
org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
at
$HttpServletRequestHandler_11edb48cbd5.service($HttpServletRequestHandler_11edb48cbd5.java)
at
org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
at
$HttpServletRequestHandler_11edb48cbd5.service($HttpServletRequestHandler_11edb48cbd5.java)
at
org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
at
$HttpServletRequestFilter_11edb48cbd2.service($HttpServletRequestFilter_11edb48cbd2.java)
at
$HttpServletRequestHandler_11edb48cbd5.service($HttpServletRequestHandler_11edb48cbd5.java)
at
org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:601)
at
$HttpServletRequestHandler_11edb48cbd5.service($HttpServletRequestHandler_11edb48cbd5.java)
at
$HttpServletRequestHandler_11edb48cbcf.service($HttpServletRequestHandler_11edb48cbcf.java)
at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:179)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
at
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:324)
at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
There are two services that implement ComponentEventResultProcessor, and
declare the @Traditional marker
--------------------------------------------------------------------------------------------------------
Key: TAP5-443
URL: https://issues.apache.org/jira/browse/TAP5-443
Project: Tapestry 5
Issue Type: Bug
Components: tapestry-core
Affects Versions: 5.1.0.0
Reporter: Fernando
Assignee: Howard M. Lewis Ship
Priority: Blocker
This causes a bad exception when tapestry tries to resolve an IoC dependency
asking for @Traditional ComponentEventResultProcessor...
I think you just want to remove it from ComponentInstanceResultProcessor.java,
and remove it from TapestryModule.java:1346 (where it uses the secondary
marker, @ComponentInstanceProcessor ).
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]