[
https://issues.apache.org/jira/browse/WICKET-6092?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jeremy Sss updated WICKET-6092:
-------------------------------
Description:
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.
was:
As early as Wicket 6.x the Wicket documentation has specified that it supports
Java's Servlet API v2.5 or newer. 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.
> 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
> 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)