You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Tim Koopman (JIRA)" <ji...@apache.org> on 2015/10/07 15:14:27 UTC

[jira] [Commented] (WICKET-5995) "Range" header parsing is broken

    [ https://issues.apache.org/jira/browse/WICKET-5995?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14946828#comment-14946828 ] 

Tim Koopman commented on WICKET-5995:
-------------------------------------

It is valid to respond to only a subset of the ranges, so if Wicket would only parse the first range it would be valid according to the specification.

> "Range" header parsing is broken
> --------------------------------
>
>                 Key: WICKET-5995
>                 URL: https://issues.apache.org/jira/browse/WICKET-5995
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 7.0.0
>            Reporter: Tim Koopman
>            Priority: Minor
>
> In the new version of Wicket, AbstractResource parses the 'Range' header in the method 'setRequestRangeMetaData'. This method is always called. 
> Unfortunately, it is fundamentally broken. According to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35 a range request can contain multiple ranges. The current implementation only supports one range and throws a NumberFormatException when multiple ranges are requested.
> Fortunately, a Resource supporting Range requests can override this method, but it also means that the CONTENT_RANGE_STARTBYTE and CONTENT_RANGE_ENDBYTE metadata are a flawed abstraction.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)