私は JSF の専門家ではなく、バッキング Bean からサーブレット フィルターに送信される要求パラメーターを取得しようとしていますが、機能しません。私は検索に多くの時間を費やしました。これは私のコードです:
豆:
public String checkURL(){ //... do something return "newpassword.xhtml?faces-redirect=true&d=" + param;
サーブレット フィルタ
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest)request;
HttpServletResponse rep = (HttpServletResponse) response;
String d = req.getParameter("d");
if( d == null || d.trim().equals("")){
rep.sendRedirect("recover.xhtml");
return;
}
chain.doFilter(request, response);
}
要するに、doFilterメソッドで「d」パラメータを取得しようとしているのですが、常にnullを返すのでif文に入ります。これは単純な検証です。リクエストにこのパラメーターが含まれていない場合、recover.xhtml にリダイレクトされます。