public class SpaRoutingFilter
extends java.lang.Object
implements javax.servlet.Filter
This is important to properly handle html5 client routing (without hashbang).
In order to route, filter checks request accept header: if it's compatible with "text/html" - routing is performed. If not, 404 error sent. Also, regex pattern is used to prevent routing (for example, for html templates). This is important for all other assets, which absence must be indicated.
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
SLASH |
| Constructor and Description |
|---|
SpaRoutingFilter(java.lang.String target,
java.lang.String noRedirectRegex) |
| Modifier and Type | Method and Description |
|---|---|
void |
destroy() |
void |
doFilter(javax.servlet.ServletRequest servletRequest,
javax.servlet.ServletResponse servletResponse,
javax.servlet.FilterChain chain) |
void |
init(javax.servlet.FilterConfig filterConfig) |
public static final java.lang.String SLASH
public SpaRoutingFilter(java.lang.String target,
java.lang.String noRedirectRegex)
public void init(javax.servlet.FilterConfig filterConfig)
throws javax.servlet.ServletException
init in interface javax.servlet.Filterjavax.servlet.ServletExceptionpublic void doFilter(javax.servlet.ServletRequest servletRequest,
javax.servlet.ServletResponse servletResponse,
javax.servlet.FilterChain chain)
throws java.io.IOException,
javax.servlet.ServletException
doFilter in interface javax.servlet.Filterjava.io.IOExceptionjavax.servlet.ServletExceptionpublic void destroy()
destroy in interface javax.servlet.Filter