16 Aralık 2021 Perşembe

Custom HttpServletRequestWrapper Sınıfı

Giriş
HttpServletRequest'i değiştiremeyiz ancak sarmalayarak farklı bir davranış elde edebiliriz.

getHeaders metodu
Şöyle yaparız
public class MyRequestWrapper extends HttpServletRequestWrapper{

  public MyRequestWrapper(HttpServletRequest request){
    super(request);
  }

  @Override 
  public String getHeaders(String name){
    if(name.equals("X-Forwarded-Proto"){
      return "xyz";
    }
    else{
      return ((HttpServletRequest)getRequest()).getHeaders(name);
    }
  }
}
Kullanım
Şöyle yaparız
public class MyFilter implements Filter{

  @Override
  public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain) throws IOException, ServletException {

    chain.doFilter(new MyRequestWrapper((HttpServletRequest)request), response);
  }
}

Hiç yorum yok:

Yorum Gönder

Bean Validation @GroupSequence Anotasyonu

Örnek Elimizde şöyle bir kod olsun public class SampleRequest {   @NotNull   LocalDate startDate;   @NotNull   LocalDate endDate;   @AssertT...