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

  • Deany Boii

    Deany Boii

    27 Kasım 2007
  • DroidModderX ROOT Master

    DroidModderX

    14 ŞUBAT 2011
  • EminemMusic

    EminemMusic

    9 ŞUBAT 2007

İLGİLİ SORU / CEVAPLAR