|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectkr.co.hit.live.web.resources.XMLFilterListResources
public class XMLFilterListResources
XMLFilterListResources는 Live Framework에서 주어진 패턴의 URL만 filtering 하는 기능을 제공하며 또한 XML로 만들어진 filtering list를 저장하고 관리하는 기능을 제공한다.
구성 화일의 내용과 형식은 다음의 DTD에 맞게 작성한다.
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT live-filter-list ( url-pattern-entry* ) >
<!ELEMENT url-pattern-entry ( url-pattern* ) >
<!ATTLIST url-pattern-entry name CDATA #REQUIRED>
<!ELEMENT url-pattern (#PCDATA) >
다음은 위의 DTD에 따라 작성된 샘플 구성화일이다. 아래에서 <url-pattern> 에 query string도 정의되어 있다면 request의 query string의 패턴도 match 되어야한다.
<?xml version="1.0"?>
<live-filter-list>
<url-pattern-entry name="EXCLUDE">
<url-pattern>/a?param=value*</url-pattern>
<url-pattern>/b</url-pattern>
<url-pattern>/*</url-pattern>
</url-pattern-entry>
<url-pattern-entry name="INCLUDE">
<url-pattern>/a/*</url-pattern>
<url-pattern>/b/f/6.jsp</url-pattern>
<url-pattern>/b/d/7.jsp</url-pattern>
</url-pattern-entry>
</live-filter-list>
XMLFilterListResources 의 구성 화일명은 Configurator 의
구성화일에 live.servlet.filter.configuration 이라는 Property 명을 사용하여 지정한다.
구성 화일명이 지정되지 않으면 디폴트 화일명으로 live-filter-list.xml를 사용한다.
※ 다음은 url-pattern 에 대한 sample이다.
"Java™ Servlet Specification Version 2.3 CHAPTER SRV.11 Mapping Requests to Servlets 참조
SRV.11.2.2 Example Mapping Set Consider the following set of mappings: Table SRV.11-1 Example Set of Maps ------------------------------------------------------- path pattern servlet ------------------------------------------------------- /foo/bar/* servlet1 /baz/* servlet2 /catalog servlet3 *.bop servlet4 ------------------------------------------------------- Table SRV.11-2 Incoming Paths applied to Example Maps ------------------------------------------------------- incoming path servlet handling request ------------------------------------------------------- /foo/bar/index.html servlet1 /foo/bar/index.bop servlet1 /baz servlet2 /baz/index.html servlet2 /catalog servlet3 /catalog/racecar.bop servlet4 /index.bop servlet4 -------------------------------------------------------
| Nested Class Summary | |
|---|---|
static class |
XMLFilterListResources.UrlPattern
*.jsp? |
| Method Summary | |
|---|---|
static XMLFilterListResources |
getInstance()
XMLFilterListResources의 단일 인스턴스를 리턴한다. |
File |
getResourceFile()
|
boolean |
isMatch(String entryName,
javax.servlet.http.HttpServletRequest request)
Filter List에 적용 하고자 하는 <url-pattern-entry>의 name 속성 값을 이용하여 Match 여부를 확인 한다. |
void |
refresh()
객체 재생성 |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
|---|
public static XMLFilterListResources getInstance()
XMLFilterListResources의 단일 인스턴스를 리턴한다.
XMLFilterListResources 오브젝트public void refresh()
public File getResourceFile()
public boolean isMatch(String entryName,
javax.servlet.http.HttpServletRequest request)
Filter List에 적용 하고자 하는 <url-pattern-entry>의 name 속성 값을 이용하여 Match 여부를 확인 한다.
entryName - <url-pattern-entry>의 name 속성 값.request - 매칭을 테스트할 HttpServletRequest 객체
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||