Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP 플러그인(jsp:plugin) 액션 요소의 용도와 사용법

JSP 플러그인 액션이란?

<jsp:plugin> 액션은 JSP 페이지에 자바(Java) 컴포넌트를 삽입할 때 사용됩니다. 이 액션은 접속한 브라우저의 종류를 자동으로 판별하고, 상황에 맞게 <object> 또는 <embed> 태그를 생성하여 삽입해 줍니다.

만약 실행에 필요한 플러그인이 사용자 환경에 설치되어 있지 않다면, 해당 플러그인을 먼저 다운로드한 후 자바 컴포넌트를 실행합니다. 여기서 말하는 자바 컴포넌트는 애플릿(Applet) 또는 자바빈(JavaBean)이 될 수 있습니다.

플러그인 액션의 주요 특징

plugin 액션은 자바 컴포넌트를 화면에 배치하기 위해 일반적으로 사용되는 HTML 태그에 대응하는 다양한 속성들을 제공합니다. 또한 <jsp:param> 요소를 활용하면 애플릿이나 빈(Bean)에 파라미터를 전달할 수 있습니다.

plugin 액션의 기본적인 사용 문법은 다음과 같습니다.

<jsp:plugin type = "applet" codebase = "dirname" code = "MyApplet.class"
width = "60" height = "80">
    <jsp:param name = "fontcolor" value = "red" />
    <jsp:param name = "background" value = "black" />
    <jsp:fallback>
       Unable to initialize Java Plugin
   </jsp:fallback>
</jsp:plugin>

관심이 있다면 실제 애플릿을 통해 이 액션을 직접 테스트해 볼 수 있습니다. 여기서 눈여겨볼 요소가 바로 <jsp:fallback>입니다. 이 새로운 요소를 사용하면 컴포넌트 실행에 실패했을 때 사용자에게 전달할 오류 메시지 문자열을 지정할 수 있습니다.

XML 요소를 동적으로 생성하는 액션들

<jsp:element>, <jsp:attribute>, <jsp:body> 액션은 XML 요소를 동적으로 정의하는 데 사용됩니다. 여기서 '동적'이라는 단어가 핵심입니다. 즉, XML 요소를 컴파일 시점에 미리 고정해 두는 것이 아니라, 요청(request) 시점에 생성할 수 있다는 의미입니다.

동적 XML 요소 생성 예제

다음은 XML 요소를 동적으로 정의하는 간단한 예제입니다.

<%@page language = "java" contentType = "text/html"%>
<html xmlns = "https://www.w3c.org/1999/xhtml"
    xmlns:jsp = "https://java.sun.com/JSP/Page">
   <head>
      <title>Generate XML Element</title>
   </head>
   <body>
      <jsp:element name = "xmlElement">
         <jsp:attribute name = "xmlElementAttr">
            Value for the attribute
         </jsp:attribute>
         <jsp:body>
            Body for XML element
         </jsp:body>
      </jsp:element>
   </body>
</html>

위 JSP 코드가 실행되면 런타임에 다음과 같은 HTML 코드가 생성됩니다.

<html xmlns = "https://www.w3c.org/1999/xhtml" xmlns:jsp = "https://java.sun.com/JSP/Page">
   <head>
      <title>Generate XML Element</title>
   </head>
   <body>
      <xmlElement xmlElementAttr = "Value for the attribute">
         Body for XML element
      </xmlElement>
   </body>
</html>

정리

<jsp:plugin>은 브라우저 환경에 맞춰 애플릿이나 자바빈을 안전하게 삽입하고, 플러그인 부재 시 자동 다운로드까지 처리해 주는 편리한 액션입니다. 아울러 <jsp:element>, <jsp:attribute>, <jsp:body> 조합을 활용하면 요청 시점에 유연하게 XML 구조를 만들어 낼 수 있습니다.