메뉴 건너뛰기

조회 수 7624 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

WAS를 갈아타고 작업할 때 마다 항상 잊어버린다. 그리고 이놈의 tomcat은 버전마다 이런 기본 설정 방법이 달라지니...
점점 떨어지는 기억력은 어쩔 수 없으니 블로그에 의지하고 남기는 수 밖에...
---

Tomcat에서 Datasource 설정하기
Tomcat에서는 JNDI 리소스를 등록하는 방법이 크게 2가지가 있다. 하나는 모든 web context가 사용할 수 있는global 리소스이고 다른 하나는 해당 context에만 적용되는 리소스이다.

Global 리소스 등록방법
${CATALINA_HOME}/conf/server.xml에 다음과 같이 추가

   <Server port="8005" shutdown="SHUTDOWN"> 
   ... 
  <GlobalNamingResources> 
    <!-- Editable user database that can also be used by 
         UserDatabaseRealm to authenticate users 
    --> 
    <Resource name="UserDatabase" auth="Container" 
              type="org.apache.catalina.UserDatabase" 
              description="User database that can be updated and saved" 
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory" 
              pathname="conf/tomcat-users.xml" /> 
    
    <Resource name="jdbc/OracleDS" auth="Container" type="javax.sql.DataSource" 
          username="xxx" 
          password="xxx" 
          driverClassName="oracle.jdbc.driver.OracleDriver" 
          url="jdbc:oracle:thin:@localhost:1521:XE" />
 
          
  </GlobalNamingResources> 
 ...

각 web context에서 global 리소스를 사용하기 위해서는 각 context의 <ResourceLink/> 태그로 연결하여야 한다. 다음은 모든 context에 연결하는 방법이다.

${CATALINA_HOME}/conf/context.xml에 다음과 같이 추가

 <Context> 
    <WatchedResource>WEB-INF/web.xml</WatchedResource> 
    <ResourceLink 
            name="jdbc/OracleDS" 
            global="jdbc/OracleDS" 
            type="javax.sql.DataSource" 
          /> 
...


Context 리소스 등록방법
tomcat 6.x에서는 각 WAR 디렉토리의 /META-INF/context.xml 파일에 해당 context 설정 정보를 담고 있다. 즉 WAR 파일 내에 context.xml 이 있어야 한다. 편하긴 한데...

예) bcf가 context라면

${CATALINA_HOME}/webapps/bcf/META-INF/context.xml 에 다음과 같이 추가

<Context antiResourceLocking="false" privileged="true"> 
<Resource name="jdbc/OracleDS" auth="Container" type="javax.sql.DataSource" 
          username="xxx" 
          password="xxx" 
          driverClassName="com.mysql.jdbc.Driver" 
          url="jdbc:mysql://localhost:3306/bcf" />
 
< /Context>


JNDI로 접근하기
다른 JNDI 룩업과 마찬가지로 다음과 같은 이름로 접근하면 된다. 그냥 jdbc/OracleDS 이런식으로는 접근할 수 없다. 

java:comp/env/jdbc/OracleDS


정리
Context 리소스 등록방법이 context.xml을 war/MET-INF 밑에 넣으면 되기 때문에 더 편하기는 한데 war에 저 파일이 배포되어야해서 좀 찜찜하다. (datasource 정보가 WAR 형상관리되어야 한다?)

따라서 운영환경에서는 global 리소스를 이용하는 방법이 나을 듯 하다. (역시 비밀번호는 노출이 되는군 ㅠㅠ)


  1. No Image 16Jul
    by
    2015/07/16 Views 7614 

    centos 버전 확인

  2. No Image 26Mar
    by
    2014/03/26 Views 7619 

    리눅스 서버 백업 - Crontab

  3. No Image 26Mar
    by
    2014/03/26 Views 7622 

    긴급 스왑 메모리 추가 하기

  4. 리눅스,사용자계정(관련 파일,명령어)

  5. No Image 11Mar
    by 조쉬
    2017/03/11 Views 7624 

    Tomcat 6에 Datasource 설정하기

  6. No Image 27Feb
    by
    2014/02/27 Views 7625 

    yum (Yellowdog Updater Modified) 명령어 정리

  7. No Image 18Mar
    by
    2016/03/18 Views 7632 

    컴파일을 이용하여 Apache 최신버전을 설치하자

  8. No Image 15May
    by
    2014/05/15 Views 7636 

    리눅스 기본보안설정(1-8)

  9. No Image 22Jul
    by
    2016/07/22 Views 7645 

    리눅스/RAID 설정하기 2

  10. No Image 17Jul
    by
    2015/07/17 Views 7648 

    CentOS 7 Subversion(SVN)

  11. Centos7 64bit 웹서버 만들기-mysql설치 CAP4

  12. No Image 26Mar
    by
    2014/03/26 Views 7662 

    리눅스 해킹사고 분석 및 대응절차

  13. No Image 16Jul
    by
    2015/07/16 Views 7663 

    CentOS 7 에 php 설치하기

  14. No Image 23Apr
    by
    2014/04/23 Views 7665 

    iptables 접속 차단 스크립트

  15. No Image 27Feb
    by
    2014/02/27 Views 7667 

    apache, mod_ssl 설치 (apache 1.3.37버전)

  16. No Image 27Feb
    by
    2014/02/27 Views 7667 

    Apache(아파치)를 사용해 redirect(리다이렉트) 하는 방법 7

  17. No Image 18Mar
    by
    2016/03/18 Views 7685 

    php http include

  18. No Image 27Feb
    by
    2014/02/27 Views 7699 

    리눅스 - 동시접속자 확인 방법

  19. No Image 17Jul
    by
    2015/07/17 Views 7701 

    CentOS 7 FTP Server 설치

  20. No Image 16Jul
    by
    2015/07/16 Views 7711 

    mariadb | my.cnf 설정. MariaDB(5.5.37) utf8 설정

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next
/ 12

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved