나는 Oracle 12 데이터베이스에 연결하고 매우 간단한 쿼리를 발행하는 Eclipse 내부에서 실행되는 아주 간단한 명령 줄 응용 프로그램을 가지고 있습니다. 그 제외하고 내가 봤 한activejdbc 소켓 쓰기 오류
// use properties to open the datasource for work
System.out.println("Opening database connection.");
logger.info("Opening database");
String dbDriver = dbProps.get("dbDriver");
String dbURL = dbProps.get("dbURL");
String username = dbProps.get("username");
String password = dbProps.get("password");
Base.open(dbDriver, dbURL, username, password);
logger.info("Database successfully opened.");
모든 문제는 "네트워크 문제"임을 나타냅니다 ... :
예외를 던지는Exception in thread "main" org.javalite.activejdbc.InitException: Failed to connect to JDBC URL: jdbc:oracle:thin:@oratest2a.emspic.org:1521:workstst
at org.javalite.activejdbc.DB.open(DB.java:93)
at org.javalite.activejdbc.Base.open(Base.java:64)
at org.emspic.works.RegistrationUtil.doMain(RegistrationUtil.java:135)
at org.emspic.works.RegistrationUtil.main(RegistrationUtil.java:75)
Caused by: java.sql.SQLRecoverableException: IO Error: Connection reset by peer: socket write error
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:752)
at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:666)
코드이 기본적으로 : 나는 다음과 같은 예외를 받고 있어요 이 동일한 컴퓨터, 나는 현재 TOAD를 통해 열려고하는 바로 그 테이블에 연결되어 있습니다 ... 그리고 나는 또한 매우 똑같은 데이터베이스에 연결하는 서버로 jboss를 실행하고 있습니다 ... 그래서 네트워크가 없습니다. 문제.
나는 완전히 손실되었다.
Java1.8, ojdbc7.jar, 모두 Microsoft Surface Pro 3 ...에서 실행 중, Oracle 버전은 원격으로 12.0.2 실행 중입니다.
ipolevoy, 좋은 제안이었습니다 ... 나는 모든 activejdbc 코드를 jdbc 코드로 대체했으며 사실 동일한 오류가 발생했습니다. 많은 고민 끝에 Java1.7로 전환했고 문제는 사라졌습니다. 그러나 Java1.8 및 ojdbc8.jar을 사용하면 데이터베이스에 연결할 수 없습니다. JDBC 또는 기타. 무슨 일이 일어나고 있는지 잘 모르겠다. 이 코드베이스를 다른 개발자로부터 상속 받았으며 많은 코드는 Java1.8 기능에 달려 있습니다. – Paul
많은 코드가 Java8과 Oracle에 의존한다면 그들은 함께 작업해야합니다. 오라클 관리자와 상담해야 할 수도 있습니다. – ipolevoy