Background Image

FORUM

조회 수 18605 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
자바 파일을 패키지로 만들지 않고 함수를 실행하면 잘 되는데 패키지로 만들어서 사용하면 오류가 발생합니다. 
패키지로 만들면 loadjava할때 [loadjava 디비명 클레파일명] 설정을 다르게 해줘야 하는지 
아니면 함수명 만들때도[AA.HH] 자바명에 패키지명을 붙여줘야 되는건지.. 아시면 자세히 설명 부탁 드립니다.
패키지로 만들어서 해보고 여러방법을 써봣지만 잘 안되네요..
 
<java파일>
package test; //패키지로 만든경우 오류남
public class AA {
  public static String HH(String dt) throws SQLException, Exception { 
  생략..
 }
}

<함수>
CREATE FUNCTION "AA"("dt" VARCHAR) RETURN STRING
 AS LANGUAGE JAVA
 NAME 'AA.HH(java.lang.String) return java.lang.String'
  • ?
    정만영 2010.02.24 01:59
    안녕하세요.!!
    답변이 늦어 죄송합니다.
    내용을 확인중에 있습니다.
  • ?
    손승일 2010.02.24 02:18
    package 형태로 생성된 경우에는 패키지 구조 그대로 등록되어야 합니다.
    즉, 위 예제로 java를 컴파일 하면 test 디렉토리 하위에 AA.class가 생성될 텐데 이 test 디렉토리 전체가 등록되어야 합니다.
    loadjava 유틸리티는 디렉토리 전체를 등록해주는 형태는 지원하지 않습니다.
    loadjava 유틸리티가 하는 일은 DB 볼륨파일이 존재하는 경로의 java 디렉토리에 명시한 class 파일을 복사하는 작업을 하는 유틸리티입니다.
    loadjava demodb AA.class 하면 demodb 볼륨파일이 존재하는 $CUBRID/databases/demodb/java/AA.class가 복사됩니다.
    따라서 loadjava 유틸리티를 사용하지 않고 해당 경로에 class 파일을 복사하면 동일한 작업이 되는 것입니다.
    demodb를 기준으로 정리하면 컴파일 후 test/AA.class를 $CUBRID/databases/demodb/java/test/AA.class로 복사하면 등록 작업은 완료가 됩니다.
    다음은 DB에 함수를 명시하는 과정에서 package 명을 포함하여 명시해줘야 합니다.
    위 예를 변경하면 NAME 'test.AA.HH(java.lang.String) return java.lang.String' 와 같이 사용하셔야 합니다.
  • ?
    쪼로롱 2010.02.24 03:21
    감사합니다. 함수 생성시 자바가 패키지 선언인 경우는 스크립트로 작성해야 겠네요. 스크립트로 작성하면 test.AA.HH가 오류없이 동작하는데 큐브리드메니저로 사용하면 형식에 위배되서 "클래스이름.함수이름" 작성하라네요..

  1. CUBRID 사용자를 위한 DBeaver 도구 출시 안내

  2. CUBRID PHP Extension 이용시 에러 해결 방법??

  3. BIT형 데이터에 대한 where ... IN 쿼리

  4. portable용 cubrid 제작이 가능할까요?

  5. 두 쿼리의 결과값을 빼려고 합니다.

  6. 큐브리드 설치후, 실행오류 발생

  7. 단일 서버에서 복제구현이 가능한지?

  8. IIS + PHP5 까지는 연동했습니다.

  9. 뷰 테이블 편집 cascade 오류

  10. 저장함수에 대하여

  11. 시리얼 업데이트 오류

  12. 큐브리드 데이타베이스 정지후 다시 데이타베이스 시작이 안됩니다.

  13. 쿼리 문제

  14. 자동증가 컬럼수정후 자동증가값이 들어가게 하려면?

  15. 데이타 입력쿼리 실행시 unique 삽입 오류 납니다.

  16. 테이블 복구

  17. mssql -> cubrid 데이터 이전시 문제

  18. Like 문이 의도하지 않은 결과값을 반환합니다.

  19. 한글메세지 출력 방법에 대해서..

  20. 555번 한글테이블 글 올린 사람입니다 (화면캡쳐함)

  21. 저장프로시저 함수-loadjava

Board Pagination Prev 1 ... 180 181 182 183 184 185 186 187 188 189 ... 213 Next
/ 213

Contact Cubrid

영업문의 070-4077-2112 / 기술문의 070-4077-2148 / 대표전화 070-4077-2110 / Email. contact_at_cubrid.com
Contact Sales