This is an automated email from the ASF dual-hosted git repository. solomax pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push: new bd74423 [OPENMEETINGS-2605] test is fixed bd74423 is described below commit bd7442324483476ac458fe520c96e631120f01cb Author: Maxim Solodovnik <solomax...@gmail.com> AuthorDate: Wed Apr 7 07:49:57 2021 +0700 [OPENMEETINGS-2605] test is fixed --- .../openmeetings/db/util/ApplicationHelper.java | 42 +++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java index b8d7919..06d68b4 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java @@ -25,8 +25,12 @@ import static org.springframework.web.context.WebApplicationContext.ROOT_WEB_APP import static org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext; import java.lang.reflect.InvocationTargetException; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; import java.util.UUID; +import javax.servlet.FilterConfig; import javax.servlet.ServletContext; import javax.servlet.ServletContextEvent; @@ -40,6 +44,7 @@ import org.apache.wicket.ThreadContext; import org.apache.wicket.mock.MockWebResponse; import org.apache.wicket.protocol.http.WebApplication; import org.apache.wicket.protocol.http.WebSession; +import org.apache.wicket.protocol.http.WicketFilter; import org.apache.wicket.protocol.http.mock.MockHttpServletRequest; import org.apache.wicket.protocol.http.mock.MockHttpSession; import org.apache.wicket.protocol.http.mock.MockServletContext; @@ -64,7 +69,7 @@ public class ApplicationHelper { try { app = (WebApplication)getAppClass().getDeclaredConstructor().newInstance(); app.setName(String.format("--%s--", UUID.randomUUID())); //temporary name for temporary application - ServletContext sc = new MockServletContext(app, null); + final ServletContext sc = new MockServletContext(app, null); XmlWebApplicationContext xmlContext = new XmlWebApplicationContext(); xmlContext.setConfigLocation("classpath:applicationContext.xml"); xmlContext.setServletContext(sc); @@ -73,6 +78,41 @@ public class ApplicationHelper { app = xmlContext.getBean(WebApplication.class); app.setName(getWicketApplicationName()); app.setServletContext(sc); + if (app.getWicketFilter() == null) { + final FilterConfig filterConfig = new FilterConfig() { + private final Map<String, String> initParameters = new HashMap<>(); + { + initParameters.put(WicketFilter.FILTER_MAPPING_PARAM, "/servlet/*"); + } + + @Override + public String getFilterName() { + return getClass().getName(); + } + + @Override + public ServletContext getServletContext() { + return sc; + } + + @Override + public String getInitParameter(String s) { + return initParameters.get(s); + } + + @Override + public Enumeration<String> getInitParameterNames() { + throw new UnsupportedOperationException("Not implemented"); + } + }; + WicketFilter filter = new WicketFilter() { + @Override + public FilterConfig getFilterConfig() { + return filterConfig; + } + }; + app.setWicketFilter(filter); + } } catch (InstantiationException | IllegalAccessException | ClassNotFoundException | InvocationTargetException | NoSuchMethodException e) { log.error("Failed to create Application"); }