SORU
3 Temmuz 2011, Pazar


Nasıl yürütme SAVAŞTA ek açıklamaları kullanarak sunucu uygulaması filtre tanımlamak için

Eğer biz tanımlamak belirli bir web sunucu uygulaması filtreleri SAVAŞ kendi web.xml, sipariş yürütme filtreler olacaktır aynı sırada hangi onlar tanımlanan web.xml.

Ama, biz bu filtreleri @WebFilter annotation kullanarak tanımlarsanız, ne filtreler yürütme sırasını ve nasıl idam sırasını belirleyebilir miyiz?

CEVAP
3 Temmuz 2011, Pazar


Gerçekten filtre düzeni @WebFilter annotation kullanarak tanımlayabilirsiniz. Ancak, en aza indirir web.xml kullanımı, yeterli açıklama tüm filtreleri ile filterName böylece ihtiyacınız yok <filter> tanım, ama sadece bir <filter-mapping> tanımında istenen sipariş.

Örneğin,

@WebFilter(filterName="filter1")
public class Filter1 implements Filter {}

@WebFilter(filterName="filter2")
public class Filter2 implements Filter {}

web.xml sadece bu:

<filter-mapping>
    <filter-name>filter1</filter-name>
    <url-pattern>/url1/*</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>filter2</filter-name>
    <url-pattern>/url2/*</url-pattern>
</filter-mapping>

Eğer @WebFilter, URL desen tutmak isterseniz o zaman olduğu gibi bu yapabilirsiniz

@WebFilter(filterName="filter1", urlPatterns="/url1/*")
public class Filter1 implements Filter {}

@WebFilter(filterName="filter2", urlPatterns="/url2/*")
public class Filter2 implements Filter {}

ama hala boş olmasına rağmen başına YANITLANAN olarak gerekli, çünkü web.xml <url-pattern> tutmak gerekir:

<filter-mapping>
    <filter-name>filter1</filter-name>
    <url-pattern />
</filter-mapping>
<filter-mapping>
    <filter-name>filter2</filter-name>
    <url-pattern />
</filter-mapping>

Ne olursa olsun yaklaşımı, bu <filter> olmadan <filter-mapping> varlığı şoklar çünkü sürüm 7.0.28 kadar Tomcat başarısız olur. Ayrıca Using Tomcat, @WebFilter doesn't work with <filter-mapping> inside web.xml bkz

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caina Mondo Zine

    Caina Mondo

    13 EKİM 2007
  • Fubar Protocol

    Fubar Protoc

    21 AĞUSTOS 2010
  • GavinMichaelBooth

    GavinMichael

    26 AĞUSTOS 2006

İLGİLİ SORU / CEVAPLAR