You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Martin Grigorov (JIRA)" <ji...@apache.org> on 2011/03/02 16:27:36 UTC

[jira] Assigned: (WICKET-3490) HybridUrlEncoding Strategy throws uncaught NumberFormatException if Integer value space is violated

     [ https://issues.apache.org/jira/browse/WICKET-3490?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Grigorov reassigned WICKET-3490:
---------------------------------------

    Assignee: Martin Grigorov

> HybridUrlEncoding Strategy throws uncaught NumberFormatException if Integer value space is violated
> ---------------------------------------------------------------------------------------------------
>
>                 Key: WICKET-3490
>                 URL: https://issues.apache.org/jira/browse/WICKET-3490
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-core
>    Affects Versions: 1.4.15
>         Environment: Wicket Pages using HybridUrlCodingStrategy, we are using Jetty 6
>            Reporter: Georg Hartner
>            Assignee: Martin Grigorov
>            Priority: Minor
>              Labels: HybridUrlCodingStrategy, NumberFormatException
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> We are using HybridUrlCodingStrategy for some of our pages. Our tester tried entering a URL like https://{serverHost}:{serverPort}/{applicationContextPath}/{pageMountPath}.999999999999999999999999999999999999999999999999999999999999999999999999999 
> 99999999... => this PageId does not exist, which is checked later in the execution path. The problem is that in org.apache.wicket.request.target.coding.HybridUrlCodingStrategy$PageInfo.parsePageInfo(HybridUrlCodingStrategy.java:873) Integer.valueOf(999999999999...) is called, which correctly causes a NumberFormatException being thrown. This Exception should be handled like an Unknown PageId from our point of view.
> Error Page/ Stack Trace:
> HTTP ERROR 500
> Problem accessing /login.999999999999999999999999999999999999999999999999999999999999999999999999999. Reason:
>     For input string: "999999999999999999999999999999999999999999999999999999999999999999999999999"
> Caused by:
> java.lang.NumberFormatException: For input string: "999999999999999999999999999999999999999999999999999999999999999999999999999"
> 	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
> 	at java.lang.Integer.parseInt(Integer.java:461)
> 	at java.lang.Integer.valueOf(Integer.java:554)
> 	at org.apache.wicket.request.target.coding.HybridUrlCodingStrategy$PageInfo.parsePageInfo(HybridUrlCodingStrategy.java:873)
> 	at org.apache.wicket.request.target.coding.HybridUrlCodingStrategy.matches(HybridUrlCodingStrategy.java:644)
> 	at org.apache.wicket.protocol.http.request.WebRequestCodingStrategy$MountsMap.strategyForPath(WebRequestCodingStrategy.java:1145)
> 	at org.apache.wicket.protocol.http.request.WebRequestCodingStrategy.urlCodingStrategyForPath(WebRequestCodingStrategy.java:444)
> 	at org.apache.wicket.protocol.http.request.CryptedUrlWebRequestCodingStrategy.urlCodingStrategyForPath(CryptedUrlWebRequestCodingStrategy.java:174)
> 	at org.apache.wicket.protocol.http.WicketFilter.getLastModified(WicketFilter.java:1147)
> 	at org.apache.wicket.protocol.http.WicketServlet.getLastModified(WicketServlet.java:284)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:703)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
> 	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
> 	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221)
> Please don't hesitate contacting me if you need more information or send me advice if you want me to contribute a fix for this issue.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira