It would be useful to know about your various class names.  The more
the merrier.    Also the exact URLs that are failing.



On Wed, Feb 27, 2008 at 3:51 PM, Filip S. Adamsen <[EMAIL PROTECTED]> wrote:
> Hi,
>
>  I'm seeing weird NumberFormatExceptions on component actions from pages
>  in folders with index pages. It looks like Tapestry tries to pass the
>  page and nested component id of the component event to the index page if
>  it accepts an activation context.
>
>  Scenario: I have a news folder in com.fsadev.kamino.pages. It contains a
>  NewsIndex and a NewsRead page. NewsIndex accepts an optional pageNumber:
>
>  public class NewsIndex {
>    ...
>    Object onActivate(int pageNumber) {
>      ...
>    }
>    ...
>  }
>
>  NewsRead has a form that submits a comment. When the comment is
>  submitted the following exception occurs:
>
>  [ERROR] RequestExceptionHandler Processing of request failed with
>  uncaught exception: Exception in method
>  com.fsadev.kamino.pages.news.NewsIndex.onActivate(int) (at
>  NewsIndex.java:58), parameter #1: Coercion of read.comment.add to type
>  java.lang.Integer (via String --> Long, Long --> Integer) failed: For
>  input string: "read.comment.add"
>  org.apache.tapestry.runtime.ComponentEventException: Exception in method
>  com.fsadev.kamino.pages.news.NewsIndex.onActivate(int) (at
>  NewsIndex.java:58), parameter #1: Coercion of read.comment.add to type
>  java.lang.Integer (via String --> Long, Long --> Integer) failed: For
>  input string: "read.comment.add"
>         at
>  
> org.apache.tapestry.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1021)
>         at
>  
> org.apache.tapestry.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:52)
>         at
>  
> com.fsadev.kamino.services.auth.AccessRequestFilter.handle(AccessRequestFilter.java:55)
>         at
>  
> $PageRenderRequestHandler_1185d36d0cc.handle($PageRenderRequestHandler_1185d36d0cc.java)
>         at
>  
> com.fsadev.tapestry.hibernate.services.TransactionRequestFilter.handle(TransactionRequestFilter.java:45)
>         at
>  
> $PageRenderRequestHandler_1185d36d0cc.handle($PageRenderRequestHandler_1185d36d0cc.java)
>         at
>  
> org.apache.tapestry.services.TapestryModule$29.handle(TapestryModule.java:1594)
>         at
>  
> $PageRenderRequestHandler_1185d36d0cc.handle($PageRenderRequestHandler_1185d36d0cc.java)
>         at
>  
> $PageRenderRequestHandler_1185d36d0c1.handle($PageRenderRequestHandler_1185d36d0c1.java)
>         at
>  
> org.apache.tapestry.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:85)
>         at $Dispatcher_1185d36d0c4.dispatch($Dispatcher_1185d36d0c4.java)
>         at $Dispatcher_1185d36d0b7.dispatch($Dispatcher_1185d36d0b7.java)
>         at
>  
> org.apache.tapestry.services.TapestryModule$13.service(TapestryModule.java:918)
>         at
>  
> org.apache.tapestry.internal.services.LocalizationFilter.service(LocalizationFilter.java:43)
>         at 
> $RequestHandler_1185d36d0b8.service($RequestHandler_1185d36d0b8.java)
>         at
>  
> org.apache.tapestry.services.TapestryModule$3.service(TapestryModule.java:534)
>         at 
> $RequestHandler_1185d36d0b8.service($RequestHandler_1185d36d0b8.java)
>         at
>  
> org.apache.tapestry.services.TapestryModule$2.service(TapestryModule.java:509)
>         at 
> $RequestHandler_1185d36d0b8.service($RequestHandler_1185d36d0b8.java)
>         at
>  
> org.apache.tapestry.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:79)
>         at 
> $RequestHandler_1185d36d0b8.service($RequestHandler_1185d36d0b8.java)
>         at
>  
> com.fsadev.tapestry.utilities.services.TapestryUtilitiesModule$1.service(TapestryUtilitiesModule.java:56)
>         at 
> $RequestHandler_1185d36d0b8.service($RequestHandler_1185d36d0b8.java)
>         at
>  
> org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:93)
>         at
>  
> org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:84)
>         at
>  
> org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77)
>         at
>  
> org.apache.tapestry.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:106)
>         at 
> $RequestHandler_1185d36d0b8.service($RequestHandler_1185d36d0b8.java)
>         at 
> $RequestHandler_1185d36d0b2.service($RequestHandler_1185d36d0b2.java)
>         at
>  
> org.apache.tapestry.services.TapestryModule$12.service(TapestryModule.java:898)
>         at
>  
> org.apache.tapestry.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:43)
>         at
>  
> $HttpServletRequestHandler_1185d36d0b3.service($HttpServletRequestHandler_1185d36d0b3.java)
>         at
>  
> org.apache.tapestry.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>         at
>  
> $HttpServletRequestFilter_1185d36d0b1.service($HttpServletRequestFilter_1185d36d0b1.java)
>         at
>  
> $HttpServletRequestHandler_1185d36d0b3.service($HttpServletRequestHandler_1185d36d0b3.java)
>         at
>  
> $HttpServletRequestHandler_1185d36d0af.service($HttpServletRequestHandler_1185d36d0af.java)
>         at 
> org.apache.tapestry.TapestryFilter.doFilter(TapestryFilter.java:164)
>         at
>  
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>         at
>  
> com.fsadev.tapestry.utilities.StripUrlSessionIdFilter.doFilter(StripUrlSessionIdFilter.java:38)
>         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:712)
>         at 
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>         at
>  
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
>         at
>  
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>         at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
>         at org.mortbay.jetty.Server.handle(Server.java:313)
>         at 
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
>         at
>  
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:844)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
>         at
>  org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
>         at
>  
> org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
>  Caused by: java.lang.IllegalArgumentException: Exception in method
>  com.fsadev.kamino.pages.news.NewsIndex.onActivate(int) (at
>  NewsIndex.java:58), parameter #1: Coercion of read.comment.add to type
>  java.lang.Integer (via String --> Long, Long --> Integer) failed: For
>  input string: "read.comment.add"
>         at
>  
> org.apache.tapestry.internal.services.ComponentEventImpl.coerceContext(ComponentEventImpl.java:72)
>         at
>  com.fsadev.kamino.pages.news.NewsIndex.dispatchComponentEvent(NewsIndex.java)
>         at
>  
> org.apache.tapestry.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:843)
>         at
>  
> org.apache.tapestry.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1004)
>         ... 55 more
>  Caused by: java.lang.RuntimeException: Coercion of read.comment.add to
>  type java.lang.Integer (via String --> Long, Long --> Integer) failed:
>  For input string: "read.comment.add"
>         at
>  
> org.apache.tapestry.ioc.internal.services.TypeCoercerImpl.coerce(TypeCoercerImpl.java:130)
>         at $TypeCoercer_1185d36d08b.coerce($TypeCoercer_1185d36d08b.java)
>         at
>  
> org.apache.tapestry.internal.services.TypeCoercedValueEncoderFactory$1.toValue(TypeCoercedValueEncoderFactory.java:45)
>         at
>  
> org.apache.tapestry.internal.services.ContextValueEncoderImpl.toValue(ContextValueEncoderImpl.java:47)
>         at
>  
> $ContextValueEncoder_1185d36d0c3.toValue($ContextValueEncoder_1185d36d0c3.java)
>         at
>  org.apache.tapestry.internal.URLEventContext.get(URLEventContext.java:44)
>         at
>  
> org.apache.tapestry.internal.services.ComponentEventImpl.coerceContext(ComponentEventImpl.java:67)
>         ... 58 more
>  Caused by: java.lang.NumberFormatException: For input string:
>  "read.comment.add"
>         at
>  java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
>         at java.lang.Long.parseLong(Long.java:403)
>         at java.lang.Long.<init>(Long.java:671)
>         at
>  
> org.apache.tapestry.ioc.services.TapestryIOCModule$7.coerce(TapestryIOCModule.java:159)
>         at
>  
> org.apache.tapestry.ioc.services.TapestryIOCModule$7.coerce(TapestryIOCModule.java:157)
>         at
>  
> org.apache.tapestry.ioc.services.CoercionTuple$CoercionWrapper.coerce(CoercionTuple.java:54)
>         at
>  
> org.apache.tapestry.ioc.internal.services.CompoundCoercion.coerce(CompoundCoercion.java:46)
>         at
>  
> org.apache.tapestry.ioc.internal.services.TypeCoercerImpl.coerce(TypeCoercerImpl.java:126)
>         ... 64 more
>
>  Something similar happens on index pages that do not accept any
>  activation context. In this case the component event isn't even triggered...
>
>  Am I doing something wrong here or have I found a bug?
>
>  -Filip
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: [EMAIL PROTECTED]
>  For additional commands, e-mail: [EMAIL PROTECTED]
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to