티스토리 뷰

Java/Exception

Tomcat6 DBCP오류

Mr.Kang 2011. 1. 19. 12:59

톰캣을 사용하면서 처음 당해보는 오류
java.sql.SQLException:org.apache.tomcat.dbcp.dbcp.DelegatingStatement with address: "com.mysql.jdbc.StatementImpl@fb6354" is closed.

위와 같은 메세지를 표시하면서 쿼리가 두번은 날라가다가 데드락 현상처럼 접속을 종료를 시켜 버린다.
3일동안 완전 삽질만 해대다가 tomcat.dbcp.dbcp 이부분이 눈에 띄어 곰곰히 생각해본결과
톰캣에서 COMMON-DBCP에 대한 설정을 따로 해주지 않으면 기본적으로 톰캣에서 제공되는 TOMCAT-DBCP를 사용하는걸로 간주되어 진다.
그런대 왜 톰캣에서 기본 제공하는 DBCP는 접속을 하고 쿼리를 날리면서 접속을 끊어버리는지 아직 원인은 모르겠다.

위와 같은 오류가 발생하게 되면 Resource설정에서 factory부분을 추가해주면 해결된다.
<Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"
username="ppp_user" password="eksldpf1024" driverClassName="com.mysql.jdbc.Driver"
factory="org.apache.commons.dbcp.BasicDataSourceFactory"
validationQuery="select 1"
testOnBorrow="true"
testWhileIdle="true"
timeBetweenEvictionRunsMillis="10000"
minEvictableIdleTimeMillis="60000"
url="jdbc:mysql://127.0.0.1:3306/test?autoReconnect=true&amp;characterEncoding=euckr" />
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함