The Jakarta Project
    The Tomcat Servlet/JSP Container

Links

Top Level Elements

Connectors

Containers

Nested Components

The GlobalNamingResources Component

Introduction

GlobalNamingResources ¿¤¸®¸ÕÆ®´Â JNDIÀÇ Àü¿ªÀÚ¿øÀ» ³ªÅ¸³»¸ç, ÀÌ ÀÚ¿øµéÀº Server ¾È¿¡¼­ Á¤Àǵ˴ϴÙ.

Attributes
Nested Components
Special Features
Environment Entries

À¥¾ÖÇø®ÄÉÀ̼ǿ¡¼­ ȯ°æÇ׸ñÀÚ¿ø(environment entry resources)À¸·Î »ç¿ëÇÒ ¼ö ÀÖµµ·Ï Ç׸ñÀÇ À̸§-°ª µéÀ» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¼³Á¤Àº <Environment> Ç׸ñÀ» ÀÌ ¿¤¸®¸ÕÆ® ³»¿¡ Áßø½ÃŰ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î ¾Æ·¡¿Í °°ÀÌ È¯°æÇ׸ñÀ» »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù:

<GlobalNamingResources ...>
  ...
  <Environment name="maxExemptions" value="10"
         type="java.lang.Integer" override="false"/>
  ...
</GlobalNamingResources>

ÀÌ ¼³Á¤Àº À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍ(/WEB-INF/web.xml)¿¡¼­ ´ÙÀ½ÀÇ ¿¤¸®¸ÕÆ®¸¦ Æ÷ÇÔ½ÃŲ °Í°ú µ¿ÀÏÇÕ´Ï´Ù:

<env-entry>
  <env-entry-name>maxExemptions</param-name>
  <env-entry-value>10</env-entry-value>
  <env-entry-type>java.lang.Integer</env-entry-type>
</env-entry>

±×·¯³ª ÀÌ °ªÀ» Ä¿½ºÅ͸¶ÀÌÁîÇϱâ À§ÇØ ¹èÄ¡ µð½ºÅ©¸³Å͸¦ º¯°æÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

<Environment> ¿¤¸®¸ÕÆ®¿¡¼­´Â ´ÙÀ½°ú °°Àº ¼Ó¼ºµéÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

AttributeDescription
description

(¼±ÅûçÇ×)ÀÌ È¯°æÇ׸ñ¿¡ ´ëÇÑ »ç¶÷ÀÌ Àб⠽¬¿î °£´ÜÇÑ ¼³¸í

name

»ý¼ºÇÒ È¯°æÇ׸ñÀÇ À̸§. java:comp/env ÄÁÅØ½ºÆ®¿¡ ´ëÇÑ »ó´ëÀûÀÎ À̸§ÀÔ´Ï´Ù.

override

À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍ¿¡¼­ <env-entry>À¸·Î °°Àº À̸§ÀÇ È¯°æÇ׸ñÀ» ÁöÁ¤ÇÏ´Â °æ¿ì, ¿©±â¿¡¼­ ÁöÁ¤ÇÑ °ªÀ» µ¤¾î¾²±â(override) ÇÏÁö ¾Êµµ·Ï ÇÏ°í ½ÍÀ¸¸é false·Î ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ °ªÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é µ¤¾î¾²±â°¡ Çã¿ëµË´Ï´Ù.

type

ÀÌ È¯°æÇ׸ñ¿¡ ´ëÇØ À¥¾ÖÇø®ÄÉÀ̼ÇÀÌ ¿¹»óÇÏ´Â ¿ÏÀüÇÑ(fully qualified) Java Ŭ·¡½º¸í. ¹Ýµå½Ã À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍÀÇ <env-entry-type>ÀÇ ±ÔÄ¢¿¡ ¸Â´Â °ªÀ̾î¾ß ÇÕ´Ï´Ù. ±× ±ÔÄ¢¿¡ ¸Â´Â °ª µéÀº: java.lang.Boolean, java.lang.Byte, java.lang.Character, java.lang.Double, java.lang.Float, java.lang.Integer, java.lang.Long, java.lang.Short, ¶Ç´Â java.lang.String ÀÔ´Ï´Ù.

value

À¥¾ÖÇø®ÄÉÀ̼ÇÀÌ JNDI ÄÁÅØ½ºÆ®·ÎºÎÅÍ ¿äÃ»ÇØ¼­ ¹Ýȯ¹ÞÀ» ȯ°æÇ׸ñÀÇ °ª. ÀÌ °ªÀº ¹Ýµå½Ã À§ÀÇ type¿¡ Á¤ÀÇµÈ Java typeÀ¸·Î º¯È¯ °¡´ÉÇØ¾ß ÇÕ´Ï´Ù.

Resource Definitions

À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍÀÇ <resource-ref>¿Í <resource-env-ref> ¿¤¸®¸ÕÆ®ÀÇ JNDI Ž»ö(lookup)¿¡ ´ëÇØ ¹ÝȯµÉ ÀÚ¿øÀÇ Æ¯¼ºµµ ¼±¾ð °¡´ÉÇÕ´Ï´Ù. ±×¸®°í ¾î¶² ÀÚ¿ø¿¡ ´ëÇØ¼­ °´Ã¼ÆÑÅ丮¸¦ »ç¿ëÇϵµ·Ï(TomcatÀÌ ¾ÆÁ÷ ¸ð¸£´Â °æ¿ì), ±×¸®°í ±× °´Ã¼ÆÑÅ丮¸¦ ¼³Á¤Çϴµ¥ »ç¿ëÇÒ ÇÁ·ÎÆÛƼ¸¦ ¼³Á¤ÇÏ·Á¸é, ¹Ýµå½Ã ±× ÀÚ¿ø°ú °°Àº À̸§À¸·Î ÀÚ¿ø ÆÄ¶ó¹ÌÅÍ(Resource Parameters)¸¦ Ãß°¡·Î Á¤ÀÇÇØ¾ß ÇÕ´Ï´Ù.

¿¹¸¦ µé¾î ´ÙÀ½°ú °°ÀÌ ÀÚ¿øÁ¤Àǰ¡ °¡´ÉÇÕ´Ï´Ù:

<GlobalNamingResources ...>
  ...
  <Resource name="jdbc/EmployeeDB" auth="Container"
            type="javax.sql.DataSource"
     description="Employees Database for HR Applications"/>
  ...
</GlobalNamingResources>

ÀÌ ¼³Á¤Àº À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍ(/WEB-INF/web.xml)¿¡ ´ÙÀ½ÀÇ ¿¤¸®¸ÕÆ®¸¦ Æ÷ÇÔ½ÃŲ °Í°ú µ¿ÀÏÇÕ´Ï´Ù:

<resource-ref>
  <description>Employees Database for HR Applications</description>
  <res-ref-name>jdbc/EmployeeDB</res-ref-name>
  <res-ref-type>javax.sql.DataSource</res-ref-type>
  <res-auth>Container</res-auth>
</resource-ref>

±×·¯³ª ÀÌ °ªÀ» Ä¿½ºÅ͸¶ÀÌÁîÇϱâ À§ÇØ ¹èÄ¡ µð½ºÅ©¸³Å͸¦ º¯°æÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

<Resource> ¿¤¸®¸ÕÆ®¿¡¼­´Â ´ÙÀ½°ú °°Àº ¼Ó¼ºµéÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

AttributeDescription
auth

ÇØ´ç ÀÚ¿ø°ü¸®ÀÚ¿¡ ÀÎÁõ(sign on)ÇÒ ¶§ À¥¾ÖÇø®ÄÉÀÌ¼Ç ÇÁ·Î±×·¥ÀÇ ÄÚµå»ó¿¡¼­ Á÷Á¢ ÀÎÁõÇÒÁö, ¶Ç´Â ¾ÖÇø®ÄÉÀ̼ÇÀÇ ÀÛµ¿(behalf)¿¡ µû¶ó ÄÁÅ×À̳ʰ¡ Á÷Á¢ ÀÎÁõÇÒÁö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ¼Ó¼ºÀÇ °ªÀº ¹Ýµå½Ã Application ¶Ç´Â Container Áß Çϳª¿©¾ß ÇÕ´Ï´Ù. ÀÌ ¼Ó¼ºÀº, À¥¾ÖÇø®ÄÉÀ̼ÇÀÌ À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍ¿¡¼­ <resource-ref> ¿¤¸®¸ÕÆ®¸¦ »ç¿ëÇÏ´Â °æ¿ì¿¡´Â ¹Ýµå½Ã ÇÊ¿äÇÕ´Ï´Ù. ±×·¯³ª <resource-env-ref>¸¦ ´ë½Å »ç¿ëÇÏ´Â °æ¿ì¿¡´Â ¼±ÅûçÇ×ÀÔ´Ï´Ù.

description

(¼±ÅûçÇ×)ÀÌ ÀÚ¿ø¿¡ ´ëÇÑ »ç¶÷ÀÌ Àб⠽¬¿î °£´ÜÇÑ ¼³¸í

name

»ý¼ºÇÒ ÀÚ¿øÀÇ À̸§. java:comp/env ÄÁÅØ½ºÆ®¿¡ ´ëÇÑ »ó´ëÀûÀÎ À̸§ÀÔ´Ï´Ù.

scope

ÀÌ ÀÚ¿ø°ü¸®ÀÚ¸¦ ÅëÇØ ¾ò¾îÁø ¿¬°á(connection)ÀÇ °øÀ¯¸¦ Çã°¡ÇÒ °ÍÀÎÁö ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ¼Ó¼ºÀÇ °ªÀº ¹Ýµå½Ã Shareable ¶Ç´Â Unshareable Áß Çϳª¿©¾ß ÇÕ´Ï´Ù. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ¿¬°áÀº °øÀ¯°¡´É(shareable)ÀÌ µË´Ï´Ù.

type

À¥¾ÖÇø®ÄÉÀ̼ÇÀÌ ÀÌ ÀÚ¿ø¿¡ ´ëÇØ Ž»öÀ» ½ÇÇàÇÒ ¶§ ¹Þ°íÀÚ ÇÏ´Â Java ŸÀÔÀ» ³ªÅ¸³»´Â ¿ÏÀüÇÑ Java Ŭ·¡½º¸í.

Resource Parameters

ÀÌ ¿¤¸®¸ÕÆ®´Â À¥¾ÖÇø®ÄÉÀ̼ǿ¡¼­ ÇØ´ç ÀÚ¿øÀÇ À̸§¿¡ ´ëÇØ JNDI Ž»öÀ» ¼öÇàÇÒ ¶§, °´Ã¼¸¦ ¹ÝȯÇϴµ¥ »ç¿ëÇÒ ÀÚ¿ø°ü¸®ÀÚ(¶Ç´Â °´Ã¼ÆÑÅ丮)¸¦ ¼³Á¤ÇÏ´Â ¿ªÇÒÀ» ÇÕ´Ï´Ù. $CATALINA_HOME/conf/server.xmlÀÇ <Context>³ª <DefaultContext> ¿¤¸®¸ÕÆ® ³»ÀÇ <Resource> ¿¤¸®¸ÕÆ®·Î ÁöÁ¤µÈ ¸ðµç ÀÚ¿ø À̸§, ±×¸®°í/¶Ç´Â À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍ¿¡¼­ <resource-ref> ³ª <resource-env-ref> ¿¤¸®¸ÕÆ®¿¡¼­ ¼±¾ðµÈ ¸ðµç ÀÚ¿ø À̸§¿¡ ´ëÇØ¼­´Â ¹Ýµå½Ã ÀÚ¿ø ÆÄ¶ó¹ÌÅÍ(resource parameters)¸¦ Á¤ÀÇÇØ¾ß ±× ÀÚ¿ø¿¡ ¼º°øÀûÀ¸·Î ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÀÚ¿ø ÆÄ¶ó¹ÌÅÍ´Â À̸§À¸·Î Á¤ÀǵǸç, Á¤È®ÇÏ°Ô ¾î¶² ÆÄ¶ó¹ÌÅÍ À̸§µéÀÇ ÁýÇÕÀ» Áö¿øÇϴ°¡´Â ´ç½ÅÀÌ »ç¿ëÇϰí ÀÖ´Â ÀÚ¿ø°ü¸®ÀÚ(¶Ç´Â °´Ã¼ÆÑÅ丮)¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù. Áï ÇØ´ç ÆÑÅ丮 Ŭ·¡½ºÀÇ JavaBeans ÇÁ·ÎÆÛƼ Áß ¼³Á¤°¡´ÉÇÑ(settable) ÇÁ·ÎÆÛƼÀÇ À̸§°ú ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù. JNDI ±¸Çöü´Â ÁöÁ¤ÇÑ ÆÑÅ丮 Ŭ·¡½ºÀÇ ÀνºÅϽº¿¡ ´ëÇØ JavaBeansÀÇ ¸ðµç ÇØ´ç ¼Ó¼ºÀÇ ¼³Á¤¸Þ¼Òµå(setter)¸¦ È£ÃâÇÔÀ¸·Î½á ¸ðµç ¼³Á¤À» ¸¶Ä£ ´ÙÀ½¿¡¾ß, ÀÌ ÆÑÅ丮 ÀνºÅϽº¸¦ JNDI lookup() È£ÃâÀ» ÅëÇØ »ç¿ë°¡´ÉÇϵµ·Ï ÇÒ °ÍÀÔ´Ï´Ù.

¿¹·Î JDBC µ¥ÀÌÅÍ ¼Ò½º¿¡ ´ëÇÑ ÀÚ¿ø ÆÄ¶ó¹ÌÅÍ ¼³Á¤Àº ¾Æ·¡¿Í °°ÀÌ µË´Ï´Ù:

<GlobalNamingResources ...>
  ...
  <ResourceParams name="jdbc/EmployeeDB">
    <parameter>
      <name>driverClassName</name>
      <value>org.hsql.jdbcDriver</value>
    </parameter>
    <parameter>
      <name>driverName</name>
      </value>jdbc:HypersonicSQL:database</value>
    </parameter>
    <parameter>
      <name>user</name>
      <value>dbusername</value>
    </parameter>
    <parameter>
      <name>password</name>
      <value>dbpassword</value>
    </parameter>
  </ResourceParams>
  ...
</GlobalNamingResources>

¸¸¾à ƯÁ¤ ÀÚ¿ø ŸÀÔ¿¡ ´ëÇØ ÆÑÅ丮 Ŭ·¡½ºÀÇ Java Ŭ·¡½º¸íÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ´Ù¸é, <ResourceParams> ¿¤¸®¸ÕÆ® ³»ÀÇ <parameter> Ç׸ñ¿¡ factory¶ó´Â À̸§À» »ç¿ëÇÏ¸é µË´Ï´Ù.

<ResourceParams> ¿¤¸®¸ÕÆ®°¡ °¡Áú ¼ö ÀÖ´Â ¼Ó¼ºÀº ´ÙÀ½°ú °°½À´Ï´Ù:

AttributeDescription
name

¼³Á¤ÇÒ ÀÚ¿øÀÇ À̸§À̸ç, java:comp/env ÄÁÅØ½ºÆ®¿¡ ´ëÇÑ »ó´ëÀûÀÎ À̸§ÀÌ µË´Ï´Ù. ÀÌ À̸§Àº $CATALINA_HOME/conf/server.xml ³»¿¡ <Resource> ¿¤¸®¸ÕÆ®·Î Á¤ÀÇµÈ ÀÚ¿ø, ±×¸®°í/¶Ç´Â À¥¾ÖÇø®ÄÉÀÌ¼Ç ¹èÄ¡ µð½ºÅ©¸³ÅÍ ³»¿¡ <resource-ref> ¶Ç´Â <resource-env-ref>·Î ÂüÁ¶µÇ´Â ÀÚ¿øÀÇ À̸§°ú ¹Ýµå½Ã ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù.


Copyright © 1999-2002, Apache Software Foundation