Github user fschrogl commented on the issue:
https://github.com/apache/wicket/pull/230
I tried to initialize Wicket using WicketFilter class and three different
approaches (one after another). That's where I noticed the different behavior
(at least that's how I understand it).
__(1) Using setFilterPath method__
@Bean
public FilterRegistrationBean<WicketFilter> initWicketFilterByGetter() {
WicketFilter wicketFilter = new WicketFilter(new
MyWicketApplication());
// filterPath '/' works for all paths
// filterPath '/*' only works for root path
wicketFilter.setFilterPath("/");
return new FilterRegistrationBean<>(wicketFilter);
}
__(2) Using init params__
@Bean
public FilterRegistrationBean<WicketFilter>
initWicketFilterByInitParam() {
WicketFilter wicketFilter = new WicketFilter(new
MyWicketApplication());
FilterRegistrationBean<WicketFilter> wicketFilterRegistrationBean =
new FilterRegistrationBean<>(wicketFilter);
// Using '/*' works for all paths, using '/' leads to an exception
wicketFilterRegistrationBean.addInitParameter(WicketFilter.FILTER_MAPPING_PARAM,
"/*");
return wicketFilterRegistrationBean;
}
__(3) Using `@WebFilter` annotation on a custom filter and
`@ServletComponentScan` for Spring Boot__
// /* works, / doesn't work
@WebFilter(value = "/*", initParams = @WebInitParam(name =
"applicationClassName", value = "package.MyWicketApplication"))
public static class MyWicketFilter extends WicketFilter { }
In approach __(1)__ I have to use `/` while in approaches __(2)__ and
__(3)__ I have to use `/*` to achieve the same outcome.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---