0

메소드가 3 또는 4 스레드에서 호출 될 때 예외가 발생합니다. 이 메서드는 메서드 내에서 DataBase 연결을 가져오고 일부 값을 DB에서 채운 다음 connection (connection, resultset 및 prepareStatement)이 메서드 내에서만 제대로 닫히기 시작합니다. 여전히 예외가 발생합니다.TDS 드라이버 가져 오기 - java.lang.NullPointerException. 이 예외는 일관성이 없습니다

Thread_1 - abc() 메소드가 호출되었습니다. 연결은 내부에서 열리고 닫혔습니다.
Thread_2 - abc() 메서드가 호출되었습니다. 연결은 내부에서 열리고 닫혔습니다.
Thread_3 - abc() 메서드가 호출되었습니다. 연결은 내부에서 열리고 닫혔습니다.

연결이 제대로 열리고 닫혔 는데도 예외가 발생하는 이유는 명확하지 않습니다. 데이터베이스 - 미스 SQL, 자바 - 1.6, 아파치 - 톰캣 6

중요한 것은 가끔 예외가 발생하고 때로는하지하지 일관 점이다.

1. Exception - 
com.inet.tds.am: 
[TDS Driver]java.lang.NullPointerException                                     
     at com.inet.tds.aj.a(Unknown Source)                                        
     at com.inet.tds.r.g(Unknown Source)                                         
     at com.inet.tds.r.executeQuery(Unknown Source)                                      
     at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93) 


2. Exception - 
java.sql.SQLException: Connection is closed.                                        
     at org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.checkOpen(PoolingDataSource.java:175)                     
     at org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepareStatement(PoolingDataSource.java:301) 

이에 알려 주시기 바랍니다.

답변

2

데이터베이스 연결이 스레드로부터 안전하지 않을 수 있습니다. 스택 추적에서 연결 풀 (dbcp)을 사용하려고 시도했지만 올바르게 설정되지 않았을 수 있습니다. DB 호출을하는 곳의 코드와 설정을 더 많이 사용하여 질문을 업데이트하면 누군가가 문제를 발견 할 수 있습니다.

+0

나는이 답변에 동의합니다. 응용 프로그램은 스레드로부터 안전하지 않으며 어딘가에 경쟁 조건이있을 수 있습니다. – tom

0

는 config/컨텍스트 파일을 검색 할 수 있습니다 -

<Resource name="jdbc/mysqlDS" auth="Container" type="javax.sql.DataSource" 
      driverClassName="com.inet.tds.TdsDriver" 
      url="jdbc:inetdae7://194.0.0.1:1433/july" 
      username="team" password="!team!" 
      maxActive="50" maxIdle="2" maxWait="10000" 
      removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"/> 
+1

원래 질문을 편집하고 거기에이 정보를 추가해야합니다. 그렇게하면 모든 정보가 중앙 집중화됩니다. – tom

관련 문제