From derby-user-return-10772-apmail-db-derby-user-archive=db.apache.org@db.apache.org Tue Mar 31 11:08:53 2009 Return-Path: Delivered-To: apmail-db-derby-user-archive@www.apache.org Received: (qmail 95380 invoked from network); 31 Mar 2009 11:08:53 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 31 Mar 2009 11:08:53 -0000 Received: (qmail 22725 invoked by uid 500); 31 Mar 2009 11:08:52 -0000 Delivered-To: apmail-db-derby-user-archive@db.apache.org Received: (qmail 22686 invoked by uid 500); 31 Mar 2009 11:08:52 -0000 Mailing-List: contact derby-user-help@db.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: Reply-To: "Derby Discussion" Delivered-To: mailing list derby-user@db.apache.org Received: (qmail 22678 invoked by uid 99); 31 Mar 2009 11:08:52 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 31 Mar 2009 11:08:52 +0000 X-ASF-Spam-Status: No, hits=2.6 required=10.0 tests=DNS_FROM_OPENWHOIS,SPF_HELO_PASS,SPF_PASS,WHOIS_MYPRIVREG X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of lists@nabble.com designates 216.139.236.158 as permitted sender) Received: from [216.139.236.158] (HELO kuber.nabble.com) (216.139.236.158) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 31 Mar 2009 11:08:44 +0000 Received: from isper.nabble.com ([192.168.236.156]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from ) id 1LobpP-0005vk-As for derby-user@db.apache.org; Tue, 31 Mar 2009 04:08:23 -0700 Message-ID: <22802900.post@talk.nabble.com> Date: Tue, 31 Mar 2009 04:08:23 -0700 (PDT) From: Krzysztof N To: derby-user@db.apache.org Subject: Re: Unable to use Table function due to java.lang.ClassNotFoundException while class is clearly reachable.. In-Reply-To: <49D0D54A.50109@sun.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Nabble-From: yazuna@gmail.com References: <707ef6b40903120750u39b7a87eudebc5e7220c83839@mail.gmail.com> <22699492.post@talk.nabble.com> <49CCDBDB.5060302@sun.com> <49D0D54A.50109@sun.com> X-Virus-Checked: Checked by ClamAV on apache.org Hello Rick, Thank you for fast response. Still have some issues though - I am using trunk version, repeated installation of jars - same way as before. Both scalar 'values' and table function call give ClassNotFoundException originating from ReflectClassesJava2:loadClassNotInDatabaseJar now: ERROR 42X51: The class 'gaia.cu7.dal.DerbyBlobTableFunction' does not exist or is inaccessible. This can happen if the class is not public. at org.apache.derby.iapi.error.StandardException.newException(StandardException.java:296) at org.apache.derby.impl.sql.compile.QueryTreeNode.verifyClassExist(QueryTreeNode.java:1445) at org.apache.derby.impl.sql.compile.StaticMethodCallNode.bindExpression(StaticMethodCallNode.java:256) at org.apache.derby.impl.sql.compile.FromVTI.bindVTITables(FromVTI.java:541) at org.apache.derby.impl.sql.compile.FromList.bindTables(FromList.java:322) at org.apache.derby.impl.sql.compile.SelectNode.bindNonVTITables(SelectNode.java:390) at org.apache.derby.impl.sql.compile.DMLStatementNode.bindTables(DMLStatementNode.java:199) at org.apache.derby.impl.sql.compile.DMLStatementNode.bind(DMLStatementNode.java:137) at org.apache.derby.impl.sql.compile.CursorNode.bindStatement(CursorNode.java:245) at org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:316) at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:88) at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:802) at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:606) at org.apache.derby.impl.jdbc.EmbedStatement.executeQuery(EmbedStatement.java:152) ... Caused by: java.lang.ClassNotFoundException: gaia.cu7.dal.DerbyBlobTableFunction 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:316) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.apache.derby.impl.services.reflect.ReflectClassesJava2.loadClassNotInDatabaseJar(ReflectClassesJava2.java:108) at org.apache.derby.impl.services.reflect.DatabaseClasses.loadApplicationClass(DatabaseClasses.java:232) at org.apache.derby.iapi.services.loader.ClassInspector.getClass(ClassInspector.java:832) at org.apache.derby.iapi.services.loader.ClassInspector.accessible(ClassInspector.java:134) at org.apache.derby.impl.sql.compile.QueryTreeNode.verifyClassExist(QueryTreeNode.java:1437) ... 17 more ============= begin nested exception, level (1) =========== java.lang.ClassNotFoundException: gaia.cu7.dal.DerbyBlobTableFunction 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:316) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.apache.derby.impl.services.reflect.ReflectClassesJava2.loadClassNotInDatabaseJar(ReflectClassesJava2.java:108) at org.apache.derby.impl.services.reflect.DatabaseClasses.loadApplicationClass(DatabaseClasses.java:232) at org.apache.derby.iapi.services.loader.ClassInspector.getClass(ClassInspector.java:832) at org.apache.derby.iapi.services.loader.ClassInspector.accessible(ClassInspector.java:134) at org.apache.derby.impl.sql.compile.QueryTreeNode.verifyClassExist(QueryTreeNode.java:1437) at org.apache.derby.impl.sql.compile.StaticMethodCallNode.bindExpression(StaticMethodCallNode.java:256) at org.apache.derby.impl.sql.compile.FromVTI.bindVTITables(FromVTI.java:541) at org.apache.derby.impl.sql.compile.FromList.bindTables(FromList.java:322) at org.apache.derby.impl.sql.compile.SelectNode.bindNonVTITables(SelectNode.java:390) at org.apache.derby.impl.sql.compile.DMLStatementNode.bindTables(DMLStatementNode.java:199) at org.apache.derby.impl.sql.compile.DMLStatementNode.bind(DMLStatementNode.java:137) at org.apache.derby.impl.sql.compile.CursorNode.bindStatement(CursorNode.java:245) at org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:316) at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:88) at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:802) at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:606) at org.apache.derby.impl.jdbc.EmbedStatement.executeQuery(EmbedStatement.java:152) ... ============= end nested exception, level (1) =========== Seems internal classpath is set properly: Executing prepared statement: CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY ('derby.database.classpath', 'APP.kn') :End prepared statement Database Class Loader started - derby.database.classpath='APP.kn' 2009-03-31 11:03:39.148 GMT Thread[SQL Execution Thread 1,6,main] (XID = 194), (SESSIONID = 1), CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY ('derby.database.classpath', 'APP.kn') ******* null Best regards, Krzysztof -- View this message in context: http://www.nabble.com/Uinable-to-use-Table-function-due-to-java.lang.ClassNotFoundException--while-class-is-clearly-reachable..-tp22478383p22802900.html Sent from the Apache Derby Users mailing list archive at Nabble.com.