JSP <jsp:text> 액션이란?
<jsp:text> 액션은 JSP 페이지 또는 XML 문법 기반의 JSP 문서 내부에 템플릿 텍스트(template text)를 그대로 작성·출력하기 위해 사용하는 표준 액션입니다. 스크립틀릿 없이 순수한 텍스트 데이터를 삽입해야 할 때 특히 유용합니다.
기본 문법
<jsp:text> 액션의 기본적인 사용 형식은 다음과 같습니다.
<jsp:text>Template data</jsp:text>
사용 시 주의 사항
<jsp:text> 액션의 본문(body)에는 다른 태그나 요소를 포함할 수 없으며, 오직 일반 텍스트와 EL(Expression Language) 표현식만 사용할 수 있습니다. 참고로 EL 표현식에 대한 자세한 내용은 이후 장에서 다룹니다.
특히 XML 파일 안에서는 ${whatever > 0}처럼 부등호(>)를 직접 사용할 수 없습니다. XML 문법상 '보다 큼' 기호가 허용되지 않기 때문인데, 이 경우 두 가지 대안이 있습니다.
- gt 연산자 사용: ${whatever gt 0} 형태로 작성
- CDATA 섹션 활용: 값을 <![CDATA[ ... ]]>로 감싸서 작성
<jsp:text><![CDATA[<br>]]></jsp:text>
DOCTYPE 선언이 필요한 경우
XHTML 문서처럼 DOCTYPE 선언을 반드시 포함해야 하는 상황이라면, 역시 <jsp:text> 요소와 CDATA 섹션을 함께 사용해야 합니다. 아래 예제를 참고하세요.
<html>
<jsp:text><![CDATA[<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"DTD/xhtml1-strict.dtd">]]></jsp:text>
<head>
<title>jsp:text action</title>
</head>
<body>
<books>
<book>
<jsp:text>
Welcome to JSP Programming
</jsp:text>
</book>
</books>
</body>
</html>정리
<jsp:text> 액션은 JSP 문서에서 템플릿 텍스트를 안전하게 출력하는 도구입니다. 핵심 포인트를 정리하면 다음과 같습니다.
- 본문에는 텍스트와 EL 표현식만 허용되며, 다른 요소는 포함 불가
- XML 환경에서는 부등호 대신 gt 연산자 또는 CDATA 섹션 사용
- XHTML의 DOCTYPE 선언 출력 시에도 <jsp:text> + CDATA 조합 활용