Java 如果缺少配置,则重定向到安装程序

Java 如果缺少配置,则重定向到安装程序,java,servlets,web-applications,servlet-3.0,Java,Servlets,Web Applications,Servlet 3.0,我正在尝试使用Servlet3.0创建一个基本的java web应用程序。 现在,我的应用程序需要运行一个基本的设置页面/表单,以便知道在哪里存储配置文件等。实现这一点的好方法是什么 我正在考虑一个过滤器,但由于我不能重定向,这似乎是错误的方式 建议?在我看来,过滤器将是实现您想要实现的目标的绝佳方法: @WebFilter public class ConfigFilter implements Filter { @Inject private SessionBean sess

我正在尝试使用Servlet3.0创建一个基本的java web应用程序。 现在,我的应用程序需要运行一个基本的设置页面/表单,以便知道在哪里存储配置文件等。实现这一点的好方法是什么

我正在考虑一个过滤器,但由于我不能重定向,这似乎是错误的方式


建议?

在我看来,
过滤器将是实现您想要实现的目标的绝佳方法:

@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 {
    }
}

你是说巫师吗?您见过如何在Websphere中部署WAR吗?你需要翻阅很多页。嗯,这不是一个真正的向导。只需一个简单的表单和几个字段输入。您可以从过滤器内部执行重定向。没问题
response.sendRedirect(…)
,就像在servlet中一样。是的,这会起作用,但我还需要检查请求是否不包含“configWizard”,否则它将进入循环?如果筛选器也映射到配置向导的URL,那么是的,您应该执行此检查。