I have a filter that looks like this:
<filter>
<filter-name>TestFilter</filter-name>
<filter-class>org.TestFilter</filter-class>
<init-param>
<param-name>timeout</param-name>
<param-value>30</param-value>
</init-param>
</filter>
Since we are talking ServletFilter and Servlets. Essentially, I am already in my servlet and have executed the first part of the doFilter. So the container must know the init-parameter. I don't have access to change the Filter class.
Is it possible to get the init-parameter value given an HttpServletRequest object?
The only solution I can think of is to read the web.xml as a resource and try to find the value manually. But it feels like there is a better solution.
Why would you need it in your servlet to begin with? Filter parameter belongs to filter. Your options are:
Context parameter example.
web.xml:
<context-param>
<param-name>param1</param-name>
<param-value>value</param-value>
</context-param>
your code:
String paramValue = getServletContext().getInitParameter("param1");
and the filter would have access to the same param value using:
String paramValue = filterConfig.getServletContext().getInitParameter("param1");