Mantık, filtrenin vurulduğu, koşulun doğru olmadığı ve filtre zincirinden geçtiği. Yanıt işlendikten sonra, filtre vurulur ve koşul şimdi doğrudur (bir istek özniteliği ayarlanmıştır). İlerletmeyi yürütür, ancak sayfa asla ileriye doğru gitmez. Bunun cevabın işlenmekte olan cevabı ile ilgili olduğunu biliyorum çünkü zincire ilk kez ulaşmadan önce farklı mantığı test ettim ve başarılı bir şekilde ileri sürdüm. Benim dağıtım tanımlayıcısı gelenYanıt verildikten sonra bir sunucu filtresinden iletilmek veya yönlendirmek mümkün mü?
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
HttpServletRequest httpServletRequest = (HttpServletRequest)request;
if (some condition equals true) {
httpServletRequest.getRequestDispatcher("/home.jsp").forward(request, response);
return;
} else {
chain.doFilter(request, response);
}
}
Örnek:
<filter>
<filter-name>MyFilter</filter-name>
<filter-class>com.filters.MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
Yukarıda istenen "/ home.jsp" yönlendirme dayalı bazı örnek kodlar sağlayabilir misiniz? Bu konuda da sorun yaşıyorum. Teşekkürler! – DougA
@Doug Düzenlemelerimi cevabımda kontrol edin. Bu yapılması gerekenleri özetlemeli. – shams