EL 비활성화 방법
1. web.xml 파일에 비활성화 옵션 지정
* 비활성화 시켜주는 옵셔을 추가한다.
<? xml version=" " encoding="UTF-8" ?>
<web-app ... >
<jsp-config>
...
<jsp-property-group>
<url-pattern> /oldversion/* </url-pattern>
<el-ignored> true </el-ignored> // EL 비활성화
<deferred-syntax-allowed-as-literal> // # EL 비활성화
true
</deferred-syntax-allowed-as-literal>
</jsp-property-group>
</jsp-config>
</web-app>
* <el-ignored> : ${ }과 #{ } 형식의 EL을 모두 문자열로 처리한다.
* <defferd-syntax-allowed-as-literal> : #{ }형식의 EL만 문자열로 처리한다.
2. JSP페이지에 비활성화 옵션 지정
* web.xml 파일에서의 EL 비활성화 여부와 상관없이 JSP에서 page 디렉티브를 이용해 EL을 비활성화 한다.
1) 관련 page 디렉티브
▷ isELIgnored : 이 값이 ture일 경우 EL을 일반 문자열로 처리한다.
▷ defferdSyntaxAllowedAsLiteral : 이 값이 ture일 경우 #{ }형식의 EL만을 문자열로 처리한다.
<%@ page isELIgnored = "true" %>
<%@ page deffredSyntaxAllowedAsLiteral = "true" %>
2) web.xml과 page 디렉티브 상태에 따른 처리 여부
web.xml <el-ignored> |
page 디렉티브 isELIgnored |
EL 처리 여부 |
X |
X |
서블릿 2.3버전 이하이면 EL을 처리하지 않는다. |
false |
X |
EL을 처리한다. |
true |
X |
EL을 처리하지 않는다. |
상관 없음 |
false |
EL을 처리한다. |
상관 없음 |
true |
EL을 처리하지 않는다. |
3. web.xml 파일을 서블릿 버전에 맞게 작성
* 서블릿 버전에 따라서 지원 여부가 결정된다.
▷ 서블릿 2.3 버전 web.xml : EL을 지원하지 않는다.
▷ 서블릿 2.4 버전 web.xml : #{ }을 지원하지 않는다.
▷ 서블릿 2.5 / 3.0 / 3/1 버전 web.xml : ${ }와 #{ }을 지원한다.
'WEB > JSP Servlet' 카테고리의 다른 글
커스텀 태그 : 기초, 태그 파일 (0) | 2016.11.05 |
---|---|
JDBC : 기초 (0) | 2016.11.05 |
표현언어 : 람다식, 스트림 API (0) | 2016.11.04 |
표현언어 : 기초, 연산자 (0) | 2016.11.02 |
JSTL : 함수 (0) | 2016.10.30 |