我正在尝试使用 servlet 3.0 创建一个基本的 java web 应用程序。现在,我的应用程序需要运行一个基本的设置页面/表单,以便它知道在哪里存储配置文件等。什么是实现这个的好方法?
我在考虑一个过滤器,但由于我无法进行重定向,这似乎是错误的方式。
建议?
我正在尝试使用 servlet 3.0 创建一个基本的 java web 应用程序。现在,我的应用程序需要运行一个基本的设置页面/表单,以便它知道在哪里存储配置文件等。什么是实现这个的好方法?
我在考虑一个过滤器,但由于我无法进行重定向,这似乎是错误的方式。
建议?
在我看来,这Filter
将是一个很好的方法来完成你想要完成的事情:
@WebFilter
public class ConfigFilter implements Filter {
@Inject
private SessionBean session;
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
String requestURI = ((HttpServletRequest) request).getRequestURI();
if(!session.hasConfig() && !requestURI.startsWith("/configWizard.xhtml")) {
((HttpServletResponse) response).sendRedirect("/configWizard.xhtml");
}
else {
chain.doFilter(request, response);
}
}
@Override
public void destroy() {
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
}