뭔놈의 플젝이 SVN Update를 받으면 계속 에러가 나는건지. 이번에는 누가 JNDI 설정을 갈아치운건지 에러가 난다. 그래서 정리할 겸 작성함.
해당 프로젝트는 Tomcat 9.0버전대를 기준으로 JNDI설정이 되어있음.
1. Project - application.yml
1
2
3
|
spring:
datasource:
jndi-name: TESTDB_Pool
|
cs |
별거는 없다. SpringBoot의 Application.yml 에서 JNDI를 다음과 같은 이름으로 사용하겠다고 명시적으로 알려주면 끝.
2. Tomcat - Context.xml
1
2
3
4
5
6
|
//중략
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
//application.yml에 작성한 spring.datasource.jndi-name과 동일하게 작성한
<ResourceLink global="TESTDB_Pool" name="TESTDB_Pool" type="javax.sql.Datasource"/>
|
cs |
여기 또한 별거 없다. application.yml의 jndi-name과 3.Tomcat-Server.xml과 연결시켜주는 부분이다.
3. Tomcat - Server.xml
1
2
3
4
5
6
7
8
9
10
11
|
//중략
<Resource auth="Container" description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
name="UserDatabase" pathname="conf/tomcat-users.xml"
type="org.apache.catalina.UserDatabase" />
//하단에 작성
<Resource auth="Container" driverClassName="com.tmax.tibero.jdbc.TbDriver"
maxActive="5" maxIdle="5" name="TESTDB_Pool" type="javax.sql.DataSource"
url="jdbc:tibero:thin:@000.000.000.000:65535" username="DB_ID" password="DB_PASSWORD"
validationQuery="select 1 from dual" />
|
cs |
가장 중요한 부분이다. DB커넥션에 관련된 모든 정보를 작성하는 곳으로, 기존의 application.yml에서 작성된 DB정보를 여기에 작성한다고 생각하면 된다.
이렇게 설정하고 재부팅 하면 된다.
'어장 Develop > 어장 JAVA' 카테고리의 다른 글
[PDFBox] pdf 텍스트 추출 (0) | 2022.07.05 |
---|---|
[poi] java poi 를 활용한 엑셀/워드 텍스트 추출 (0) | 2022.07.04 |
[PDFBox] java Image to PDF (0) | 2021.08.24 |
[xml] RestAPI XML Return (2) (0) | 2021.07.06 |
[xml] RestAPI XML Return (0) | 2021.07.02 |