database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
ㆍCUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
CUBRID Q&A 335 게시물 읽기
No. 335
Q.자바 저장 프로시져 호출했는데 버그가 좀 있습니다;;;;
작성자
흐음;;
작성일
2007-06-27 14:28
조회수
4,687

오늘 아침에 적용해 본 결과 에러가 나는데 달리 해결방법이 없네요

 

-------------------------------------------------------------------------------------------------------------------------------------------

 

현재 웹서버에 에러메세지는 다음과 같습니다.

 

 

 

30:22.340] cubrid.jdbc.driver.CUBRIDException: Stored procedure execute error: java.lang.ClassNotFoundException: \' \' java.lang.String

 

[10:30:22.341]  at unisql.jdbc.driver.UniSQLStatement.checkExecuteError(UniSQLStatement.java:798)

 

[10:30:22.341]  at unisql.jdbc.driver.UniSQLStatement.executeCore(UniSQLStatement.java:738)

 

[10:30:22.341]  at unisql.jdbc.driver.UniSQLPreparedStatement.executeUpdate(UniSQLPreparedStatement.java:89)

 

[10:30:22.341]  at org.apache.commons.dbcp.DelegatingCallableStatement.executeUpdate(DelegatingCallableStatement.java:246)

 

[10:30:22.341]  at ***********************************************************

[10:30:22.341]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 

[10:30:22.341]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

 

-------------------------------------------------------------------------------------------------------------------------------------------

 

큐브리드의 자바 에러는

 

 

 

Jun 27, 2007 9:46:10 AM com.cubrid.jsp.Server log

 

SEVERE:

 

java.lang.ClassNotFoundException: \' \' java.lang.String

 

        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)

 

        at java.security.AccessController.doPrivileged(Native Method)

 

        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)

 

        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

 

        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)

 

        at com.cubrid.jsp.StoredProcedureClassLoader.loadClass(StoredProcedureClassLoader.java:63)

 

        at com.cubrid.jsp.TargetMethod.getClass(TargetMethod.java:53)

 

        at com.cubrid.jsp.TargetMethod.classFor(TargetMethod.java:103)

 

        at com.cubrid.jsp.TargetMethod.classesFor(TargetMethod.java:74)

 

 

-------------------------------------------------------------------------------------------------------------------------------------------

 

 

try{

 

                                        

 

                                        conn = this.getConnection();

 

                                        cstmt = conn.prepareCall(\" \" +

 

                                                                  \" call ***********

 

                                                                  \" ? , ? , ? ,     \" +

 

                                                                  \" ? , ? , ? , ? , ? , \" +         //7

 

                                                                  \" ? , ? , ? , ? , ? , \" +   //13

 

                                                                  \" ? , ? ) \");                                                  //12

 

                                        

 

                                        cstmt.setString(1,userNid);

 

                                        cstmt.setString(2,shot_code);

 

                                        cstmt.setString(3,shot_id);            

 

                                        

 

                                        cstmt.setString(4,p_code);

 

                                        cstmt.setString(5,p_id);

 

                                        cstmt.setString(6,subject);

 

                                        cstmt.setString(7,memo);

 

                                        cstmt.setString(8,ip);

 

                                        

 

                                        cstmt.setString(9,s_item);

 

                                        cstmt.setString(10,mymsg);

 

                                        cstmt.setString(11,fmsg1);

 

                                        cstmt.setString(12,fmsg2);

 

                                        cstmt.setString(13,fmsg3);

 

                                        

 

                                        cstmt.setString(14,fmsg4);

 

                                        cstmt.setString(15,fmsg5);

 

                                        

 

                                        cstmt.executeUpdate();

 

                                        

 

                                        cstmt.close();

 

                                        conn.close();

 

                                        

 

                           }catch(Exception ex){

 

                                        ex.printStackTrace();

 

 

 

 

 

-------------------------------------------------------------------------------------------------------------------------------------------

 

 

선언한 프로시져입니다.

 

 

 

                           create PROCEDURE **************

 

                                        (

 

                                        userNid varchar , shot_code VARCHAR ,

 

                                        shot_id varchar , p_code varchar ,  p_id varchar ,  subject varchar,

 

                                        memo varchar , ip varchar ,  s_item varchar,  mymsg varchar , fmsg1 varchar,

 

                                        fmsg2 varchar ,  fmsg3 varchar ,  fmsg4 varchar ,  fmsg5 varchar

 

                                        )

 

                                        as LANGUAGE JAVA

 

                                        NAME ******************************

 

                                                                                java.lang.String , java.lang.String , java.lang.String ,

 

                                                                                java.lang.String , java.lang.String , java.lang.String , java.lang.String ,

 

                                

이 글에 대한 댓글이 총 1건 있습니다.

문제의 원인은 버그입니다. java method signature가 긴 경우 중간에 \' \'이 추가되는 현상때문에 정상적으로 stored procedure 호출이 되지 않는 것입니다. 빠른 시간내에 버그을 수정하여 patch를 배포하도록 하겠습니다.

 

>오늘 아침에 적용해 본 결과 에러가 나는데 달리 해결방법이 없네요

>

>-------------------------------------------------------------------------------------------------------------------------------------------

>

>현재 웹서버에 에러메세지는 다음과 같습니다.

>

>

>

>30:22.340] cubrid.jdbc.driver.CUBRIDException: Stored procedure execute error: java.lang.ClassNotFoundException: \\\' \\\' java.lang.String

>

>[10:30:22.341]  at unisql.jdbc.driver.UniSQLStatement.checkExecuteError(UniSQLStatement.java:798)

>

>[10:30:22.341]  at unisql.jdbc.driver.UniSQLStatement.executeCore(UniSQLStatement.java:738)

>

>[10:30:22.341]  at unisql.jdbc.driver.UniSQLPreparedStatement.executeUpdate(UniSQLPreparedStatement.java:89)

>

>[10:30:22.341]  at org.apache.commons.dbcp.DelegatingCallableStatement.executeUpdate(DelegatingCallableStatement.java:246)

>

>[10:30:22.341]  at ***********************************************************

>[10:30:22.341]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

>

>[10:30:22.341]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

>

>-------------------------------------------------------------------------------------------------------------------------------------------

>

>큐브리드의 자바 에러는

>

>

>

>Jun 27, 2007 9:46:10 AM com.cubrid.jsp.Server log

>

>SEVERE:

>

>java.lang.ClassNotFoundException: \\\' \\\' java.lang.String

>

>        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)

>

>        at java.security.AccessController.doPrivileged(Native Method)

>

>        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)

>

>        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

>

>        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)

>

>        at com.cubrid.jsp.StoredProcedureClassLoader.loadClass(StoredProcedureClassLoader.java:63)

>

>        at com.cubrid.jsp.TargetMethod.getClass(TargetMethod.java:53)

>

>        at com.cubrid.jsp.TargetMethod.classFor(TargetMethod.java:103)

>

>        at com.cubrid.jsp.TargetMethod.classesFor(TargetMethod.java:74)

>

>

>-------------------------------------------------------------------------------------------------------------------------------------------

>

>

>try{

>

>                                        

>

>                                        conn = this.getConnection();

>

>                                        cstmt = conn.prepareCall(\\\" \\\" +

>

>                                                                  \\\" call ***********

>

>                                                                  \\\" ? , ? , ? ,     \\\" +

>

>                                                                  \\\" ? , ? , ? , ? , ? , \\\" +         //7

>

>                                                                  \\\" ? , ? , ? , ? , ? , \\\" +   //13

>

>                                                                  \\\" ? , ? ) \\\");                                                  //12

>

>                                        

>

>                                        cstmt.setString(1,userNid);

>

>                                        cstmt.setString(2,shot_code);

>

>                                        cstmt.setString(3,shot_id);            

>

>                                        

>

>                                        cstmt.setString(4,p_code);

>

>                                        cstmt.setString(5,p_id);

>

>                                        cstmt.setString(6,subject);

>

>                                        cstmt.setString(7,memo);

>

>                                        cstmt.setString(8,ip);

>

>                                        

>

>                                        cstmt.setString(9,s_item);

>

>                                        cstmt.setString(10,mymsg);

>

>                                        cstmt.setString(11,fmsg1);

>

>                                        cstmt.setString(12,fmsg2);

>

>                                        cstmt.setString(13,fmsg3);

>

>                                        

>

>                                        cstmt.setString(14,fmsg4);

>

>                                        cstmt.setString(15,fmsg5);

>

>                                        

>

>                                        cstmt.executeUpdate();

>

>                                        

>

>                                        cstmt.close();

>

>                                        conn.close();

>

>                                        

>

>                           }catch(Exception ex){

>

>                                        ex.printStackTrace();

>

>

>

>

>

>-------------------------------------------------------------------------------------------------------------------------------------------

>

>

>선언한 프로시져입니다.

>

>

>

>                           create PROCEDURE **************

>

>                                        (

>

>                                        userNid varchar , shot_code VARCHAR ,

>

>                                        shot_id varchar , p_code varchar ,  p_id varchar ,  subject varchar,

>

>                                        memo varchar , ip varchar ,  s_item varchar,  mymsg varchar , fmsg1 varchar,

>

>                                        fmsg2 varchar ,  fmsg3 varchar ,  fmsg4 varchar ,  fmsg5 varchar

>

>                                        )

>

>                                        as LANGUAGE JAVA

>

>                                        NAME ******************************

>

>                                                                    &nbs

강동완님이 2007-06-27 15:43에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
339Q.안녕하세요. C-API에 대한 도움말을 구할 수 없을련지요.. [1]
오순근
2007-06-28
3521
338Q.어제 개발자 교육에 감사드립니다. [1]
개발자
2007-06-28
4136
337Q.C-API 질문이...어제 교육참석자입니다.... [1]
오순근
2007-06-28
3775
335Q.자바 저장 프로시져 호출했는데 버그가 좀 있습니다;;;; [1]
흐음;;
2007-06-27
4687
334Q.utf-8 사용 [1]
utf
2007-06-27
3900
333Q.mysql에서 cubrid로 데이터 이전에 아랍어가 포함되어서 insert가 되지 않습니다. [1]
백승현
2007-06-27
3736
332Q.sulinux 에 설치를 하려고 하는데 설치가 되지 않음 [1]
김신일
2007-06-27
4060
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다