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

Martin Grigorov commented on WICKET-6092:
-----------------------------------------

Hm.
I don't see why such error is thrown. It is perfectly valid to return more 
specific type in a specialization class.
Could you please provide a test case that fails?

The problem is that this change will break API, and some applications which 
already use this wrong API will be broken with next release of 6.x/7.x.

> MockHttpServletResponse causes AbstractMethodError during unit tests
> --------------------------------------------------------------------
>
>                 Key: WICKET-6092
>                 URL: https://issues.apache.org/jira/browse/WICKET-6092
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 6.21.0, 7.2.0
>            Reporter: Jeremy Sss
>            Assignee: Martin Grigorov
>            Priority: Minor
>
> As early as Wicket 6.x the Wicket documentation has specified that it 
> supports Java's Servlet API v2.5 or newer 
> (https://wicket.apache.org/start/wicket-6.x.html#servlet-api). Java's Servlet 
> API v3.x specifies that classes who implement the HttpServletResponse 
> interface must implement the getHeaderNames() method which returns the type 
> Collection<String> 
> (http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpServletResponseWrapper.html#getHeaderNames--).
>  While preforming unit tests using WicketTester, Wicket helpfully uses the 
> MockHttpServletResponse class which defines a getHeaderNames() method that 
> returns type Set<String> 
> (https://ci.apache.org/projects/wicket/apidocs/7.x/org/apache/wicket/protocol/http/mock/MockHttpServletResponse.html#getHeaderNames()).
>  
> While running unit tests for code that makes use of the getHeaderNames() 
> method, an AbstractMethodError is thrown due to the incorrect method 
> signature. Wicket's MockHttpServletResponse should implement and override the 
> getHeaderNames() method with the same signature as defined in 
> HttpServletResponse.



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

Reply via email to