Description
Using an application with a composed filterPath like:
<filter-mapping>
<filter-name>wicket.jsessionid</filter-name>
<url-pattern>/demo/test/*</url-pattern>
</filter-mapping>
Wicket fails to properly render a bookmarkable link.
I've debuged my app and the problem is here:
UrlRenderer.removeCommonPrefixes()
Line 309:
String filterPath = request.getFilterPath();
if (filterPath != null && segments.isEmpty() == false)
{
if (filterPath.equals(UrlUtils.normalizePath(segments.get(0))))
{
LOG.debug("Removing the filter path '{}' from '{}'", filterPath, segments);
segments.remove(0);
}
}
This code assumes that the filter path is a single segment path, not a composed path.
I've only reached this bug browsing my website with the cookies disable. This is why it's not critical.