Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
5.0
-
None
Description
Under some circumstances, web browsers will query for file "favicon.ico". If the file does not exist, then it falls through into the MasterDispatcher service and is interpreted as page name: "favicon", component: "ico", event: "action" (the default), causing a further error:
[ERROR] DefaultRequestExceptionHandler Processing of request failed with uncaught exception: Unable to resolve page 'favicon' to a component class name. Available page names: ActionPage, AnyDemo, AssetDemo, BadTemplate, Barney, BeanEditorDemo, BlockDemo, ClassLoaderInspect, Countdown, EnvironmentalDemo, Expansion, ExpansionSubclass, FlashDemo, Fred, GridDemo, GridEnumDemo, InjectComponentMismatch, InjectDemo, InstanceMixin, Kicker, Localization, MerryChristmas, NullGrid, NumberSelect, PageLinkContext, PageLoadedDemo, ParameterConflict, ParameterDefault, PasswordFieldDemo, PostLogin, Protected, RecursiveDemo, RenderComponentDemo, RenderPhaseOrder, SecurityAlert, ShowSelection, SimpleForm, SimpleTrackGridDemo, Start, Target, ToDoList, ToDoListVolatile, ValidBeanEditorDemo, ValidForm, ViewRegistration, Wilma, core/ExceptionReport.
java.lang.IllegalArgumentException: Unable to resolve page 'favicon' to a component class name. Available page names: ActionPage, AnyDemo, AssetDemo, BadTemplate, Barney, BeanEditorDemo, BlockDemo, ClassLoaderInspect, Countdown, EnvironmentalDemo, Expansion, ExpansionSubclass, FlashDemo, Fred, GridDemo, GridEnumDemo, InjectComponentMismatch, InjectDemo, InstanceMixin, Kicker, Localization, MerryChristmas, NullGrid, NumberSelect, PageLinkContext, PageLoadedDemo, ParameterConflict, ParameterDefault, PasswordFieldDemo, PostLogin, Protected, RecursiveDemo, RenderComponentDemo, RenderPhaseOrder, SecurityAlert, ShowSelection, SimpleForm, SimpleTrackGridDemo, Start, Target, ToDoList, ToDoListVolatile, ValidBeanEditorDemo, ValidForm, ViewRegistration, Wilma, core/ExceptionReport.
at org.apache.tapestry.internal.services.ComponentClassResolverImpl.resolvePageNameToClassName(ComponentClassResolverImpl.java:179)
at $ComponentClassResolver_11129f280a4.resolvePageNameToClassName($ComponentClassResolver_11129f280a4.java)
at org.apache.tapestry.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:44)
at $RequestPageCache_11129f280e3.get($RequestPageCache_11129f280e3.java)
at $RequestPageCache_11129f280c3.get($RequestPageCache_11129f280c3.java)
at org.apache.tapestry.internal.services.ActionLinkHandlerImpl.handle(ActionLinkHandlerImpl.java:63)
at org.apache.tapestry.internal.services.ActionLinkHandlerImpl.handle(ActionLinkHandlerImpl.java:53)
at $ActionLinkHandler_11129f280e1.handle($ActionLinkHandler_11129f280e1.java)
at org.apache.tapestry.internal.services.ComponentActionDispatcher.dispatch(ComponentActionDispatcher.java:115)
at $Dispatcher_11129f280e2.dispatch($Dispatcher_11129f280e2.java)
at $Dispatcher_11129f280d6.dispatch($Dispatcher_11129f280d6.java)
at org.apache.tapestry.services.TapestryModule$5.service(TapestryModule.java:499)
at org.apache.tapestry.integration.app1.services.AppModule$1.service(AppModule.java:50)
at $RequestFilter_11129f280d5.service($RequestFilter_11129f280d5.java)
at $RequestHandler_11129f280d7.service($RequestHandler_11129f280d7.java)
at org.apache.tapestry.services.TapestryModule$6.service(TapestryModule.java:534)
at $RequestHandler_11129f280d7.service($RequestHandler_11129f280d7.java)
at org.apache.tapestry.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:56)
at $RequestHandler_11129f280d7.service($RequestHandler_11129f280d7.java)
at org.apache.tapestry.internal.services.LocalizationFilter.service(LocalizationFilter.java:43)
at $RequestHandler_11129f280d7.service($RequestHandler_11129f280d7.java)
at org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:91)
at org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:1)
at org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77)
at org.apache.tapestry.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:104)
at $RequestHandler_11129f280d7.service($RequestHandler_11129f280d7.java)
at $RequestHandler_11129f280d2.service($RequestHandler_11129f280d2.java)
at org.apache.tapestry.services.TapestryModule$3.service(TapestryModule.java:408)
at $HttpServletRequestHandler_11129f280d1.service($HttpServletRequestHandler_11129f280d1.java)
at org.apache.tapestry.TapestryFilter.doFilter(TapestryFilter.java:115)
at org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:334)
at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:286)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:526)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
at org.mortbay.http.HttpServer.service(HttpServer.java:879)
at org.mortbay.http.HttpConnection.service(HttpConnection.java:789)
at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:960)
at org.mortbay.http.HttpConnection.handle(HttpConnection.java:806)
at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:218)
at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:331)
at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:520)