기술지원 문의

김동현님...꼭 보세요..
다시한번.. / 2003-12-31 10:01

음.. 앞서 제가 얘기했던 내용을 잘 못보셨나봅니다. 

글올린 내용에 보시면.. 저희 환경이 linux, apache1.3.27, resin2.1.10에 jsp or Servlet을 사용해서 프로그램을 개발하고있습니다 . 라고 전제를 깔았습니다만...

머신은 i386 GNU/Linux 입니다.

현재 레진에서 제공해주는 디비풀에는 import javax.sql.*;을 사용해서 DataSource라는 클래스를 사용하더군요. 

이 패키지는 jdk1.4이상에서만 지원되기에 jdk1.4를 설치를 할려고 하는데 sun에서 받은 jdk를 리눅스 혹은 솔라리스에 설치하는데 설치도중 

오류메시지를 뿌리면서 설치가 되지않아서 ibm에서 제공하는 jdk를 다운받아 설치를 할려고했습니다만... 

마찬가지로 압축은 해제가 되는데 아카이브파일이 풀리지 않아서 javac가 data file로 나옵니다. (ibm jdk1.4를 받아 설치도중)

저희환경이 ibm환경이 아니라.. sun에서 받은 jdk는 오류가 나면서 깔리지 않아 차선으로 ibm의 jdk1.4를 다운받아 설치를 한것입니다. 

글을 제대로 읽지 않으신것 같습니다....ㅠ.ㅠ

여기 이 글을 올린것은.. 저희 servlet-Container가 resin이기에 레진의 디비풀을 사용하고싶어서 방법적으로 물어보는겁니다. 

요지는..jdk1.4를 설치할려는 이유는 TestDatabase.java란 화일을 만들었을때 javax.sql.*을 사용하기 때문에(DataSource라는 클래스를 사용) jdk1.4를 

설치할려고 하는것입니다. jdk1.3에서는 컴파일이 안돼더군요...(DataSource라는 클래스는 jdk1.4에서 제공되는 클래스입니다.)

만약 jdk1.4를 설치하지 않아도 된다면 컴파일 과정에서 import 하는 javax.sql.* 패키지 처리는 어떻게 해야 하는것인지가 궁금합니다. 

jdk1.4를 설치하지 않아도 된다면... 1. 레진의 풀을 사용하는 다른방법이 있는지, (DataSource라는 클래스를 사용하지 않는 디비풀 사용법 혹은 메뉴얼)

2.혹은 다른 패키지를 설정해야 하는지를 알고싶습니다.. (DataSource라는 클래스를 사용하기 위해 받아서 설정해야 하는 패키지?)

다시한번 읽어보시고 답변주시면 감사하겠습니다. 

한해가 저물어가고 새로운 해가 다가옵니다.
새해에는 원하는 소망이루시고 행복해 지시길....

[Re]김동현님...꼭 보세요..
김동현 / 2003-12-31 11:44

...
요지는..jdk1.4를 설치할려는 이유는 TestDatabase.java란 화일을 만들었을때 javax.sql.*을 사용하기 때문에(DataSource라는 클래스를 사용) jdk1.4를 
설치할려고 하는것입니다. jdk1.3에서는 컴파일이 안돼더군요...(DataSource라는 클래스는 jdk1.4에서 제공되는 클래스입니다.)
답변> 뭔가 착각 하고 계신거 같군요.^^  DataSource 클래스는 기본적인 jdk 안에 있는 패키지 클래스가 아니라, 서블릿 컨테이너에 들어 있는 패키지 클래스 입니다. 톰켓이나, 레진같은 엔진에서 제공합니다. 다시 한번 말씀드리지만, 레진은 jdk 1.2이상 버전에서 아무 문제 없이 작동합니다. 그리고, 레진은 핫디플로이를 제공하기 때문에  TestDatabase.java를 제대로 배치만 된다면 자동 컴파일 됩니다. 에러는 로그 파일을 보고 확인할 수 있습니다. 레진 홈디렉토리밑에 lib밑에 .jar 파일이 있는데, 레진이 문제없이 스타트 된다면 이곳에 있는 .jar파일을 전부 물고 올라 갑니다. 핫디플로이 방법을 사용하지 않고 직접 컴파일 하고 싶으시면(추천하지 않음), 레진홈디렉토리밑에 lib밑에 있는 .jar파일을 클래스 패스에 잡으셔야 합니다. 마지막으로 DabaSource 클래스가 서블릿 엔진에서 제공하는 패키지인지 직접 확인하고 싶으시다면,  레진홈밑에 lib밑에 jdbcXXXXXXX.jar파일이 있는데 풀어서 확인해 보세요.. 

만약 jdk1.4를 설치하지 않아도 된다면 컴파일 과정에서 import 하는 javax.sql.* 패키지 처리는 어떻게 해야 하는것인지가 궁금합니다. 
답변> jdk1.4를 설치하지 않으셔도 됩니다. 그대로 import javax.sql.*; 하시면 됩니다.

jdk1.4를 설치하지 않아도 된다면... 1. 레진의 풀을 사용하는 다른방법이 있는지, (DataSource라는 클래스를 사용하지 않는 디비풀 사용법 혹은 메뉴얼)
답변>어떤 방식으로 사용하신지 모르겠지만, resin.conf에 디비풀설정부분에 사용하시는 디비에 맞게 설정하시고.. 소스상에서는 다음과 같은 방법으로
커넥션 할 수 있습니다.
<%@ page import=java.sql.*, javax.sql.*, javax.naming.* %>
<%
Context env = (Context) new InitialContext().lookup(\"java:comp/env\");
DataSource source = (DataSource) env.lookup(\"jdbc/oracle\");
Connection conn = source.getConnection();
...
%>
이런식으로 사용하시면 됩니다. 물론 서블릿도 똑같은 방법입니다.

2.혹은 다른 패키지를 설정해야 하는지를 알고싶습니다.. (DataSource라는 클래스를 사용하기 위해 받아서 설정해야 하는 패키지?)
답변> 첫번째 답변을 참고 하세요..

제 답변이 도움이 되었으면 좋겠군요..
그럼.. 수고하세요..