주제

소개To top of page

사용자 정의 태그는 JSP API 확장 메커니즘입니다. 사용자 정의 태그를 사용하면 JSP 페이지 설명을 확장할 수 있습니다. JSP 태그는 Java로 구현되지만 HTML 태그와 유사한 태그를 사용하여 JSP로 활성화됩니다. 그러나 JSP 태그는 HTML 태그와 달리 클라이언트 브라우저가 아닌 서버가 처리합니다.

사용자 정의 태그는 웹 설계자(JSP 개발자)와 Java 프로그래머 간의 책임 구분이 명확합니다. Java 프로그래머는 사용자 정의 JSP 태그를 구현합니다. 웹 설계자는 이러한 태그를 명확하게 선택하여 Java 구현을 활성화합니다.

다음 다이어그램과 같이 JSP 설계자는 태그를 선언하여 Java 코드를 "호출"하고 Java 개발자는 태그 핸들러에서 코드를 개발합니다.

첨부 텍스트에 설명된 다이어그램

사용자 정의 태그를 제공하려면 Java 개발자가 다음 두 가지를 제공해야 합니다.

태그 핸들러To top of page

태그 핸들러는 태그 인터페이스를 구현하는 클래스입니다. 두 개의 라이브러리 클래스를 사용하여 태그 핸들러를 쉽게 제공할 수 있습니다. 두 개의 클래스는 javax.servlet.jsp.TagSupportjavax.servlet.jsp.BodyTagSupport입니다. TagSupport 클래스는 본문이 없는 태그에 사용되고 BodyTagSupport는 본문이 있는 태그에 사용됩니다.

다음은 가능한 가장 간단한 태그 핸들러 구현 예입니다.

첨부 텍스트에 설명된 다이어그램

태그 라이브러리 설명자To top of page

JSP가 JSP 사용자 정의 태그를 사용하려면 태그 라이브러리 설명자를 작성해야 합니다. 태그 라이브러리 설명자는 태그 핸들러와 함께 웹 서버에 전개되는 XML 파일입니다.

다음은 HelloWorld 태그 라이브러리 설명자를 포함하는 간단한 태그 라이브러리 파일입니다.

<?xml version="1.0" encoding="ISO-8859-1" ?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLScheme-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd"
version="2.0">
<tlib-version>1.0</tlib-version>
<short-name>simp</short-name>
<uri> http://www.inferdata.com/taglib/hello-world</uri>
<description>Simple example of a JSP custom tag</description>
<tag>
<name>hello</name>
<tag-class>com.inferdata.taglib.HelloWorld</tag-class>
<body-content>empty</body-content>
<description>Simple hello world tag</description>
</tag>
</taglib>

 


이 컨텐츠는 Inferdata Corporation에서 개발되었거나 부분적으로 개발되었습니다.

Rational Unified Process   2003.06.15