웹 어플리케이션 프로젝트를 분석하다가 다음과 같은 오류가 계속 발생했다.
javax.naming.NamingException: Could not load resource factory class [Root exception is java.lang.ClassNotFoundException: org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory]
라는 오류가 발생하였고 인터넷을 검색하던 중 오류를 해결할 수 있게 되었다.
실제로 현재 톰캣8.5 버전을 사용하고 있는데,
1 2 3 4 5 6 7 8 9 10 11 12 | <Context> <Resource name="jdbc/OracleDB" auth="Container" type="javax.sql.DataSource" username="dbid23geb" password="dbpass23geb" driverClassName="oracle.jdbc.OracleDriver" factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" url="jdbc:oracle:thin:@localhost:1521:XE" maxActive="500" maxIdle="100"/> </Context> | cs |
Context Resource factory 요소를 다음과 같이 사용하고 있었다.
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
톰캣8.0 이상을 사용하는 경우에는 factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory" 로 바꿔줘야 한다.
톰캣7.0 이하일 경우 dpcp, 톰캣8.0 이상일 경우에는 dbcp2로 사용하면 된다.
'Server > Tomcat' 카테고리의 다른 글
Tomcat :: java.lang.OutOfMemoryError : PermGen space 에러 (0) | 2018.06.12 |
---|---|
Tomcat :: web.xml의 welcome-file-list (0) | 2016.12.15 |
Tomcat :: 서블릿 버전별 web.xml DTD 선언 (스키마 방식) (0) | 2016.11.23 |
Tomcat :: web.xml의 load-on-startup (0) | 2016.11.17 |