agora inbox for pljava-dev@postgresql.org
help / color / mirror / Atom feedSubject: [Pljava-dev] Cannot find dynamic class
Date: Sat, 25 Mar 2006 12:22:14 -0500
Message-ID: <44257C46.6070701@metadapt.com> (raw)
In-Reply-To: <4424F664.7060105@tada.se>
References: <4424C5C3.4000500@metadapt.com>
<4424F664.7060105@tada.se>
Hi Thomas,
Thanks for responding. :) Here is my stack trace.
INFO: 24 Mar 06 23:06:59 org.postgresql.pljava.sqlj.Loader Failed to
load class
org.postgresql.pljava.internal.ServerException: stack depth
limit exceeded
at
org.postgresql.pljava.internal.ExecutionPlan._cursorOpen(Native Method)
at
org.postgresql.pljava.internal.ExecutionPlan.cursorOpen(ExecutionPlan.java:136)
at
org.postgresql.pljava.jdbc.SPIStatement.executePlan(SPIStatement.java:114)
at
org.postgresql.pljava.jdbc.SPIPreparedStatement.execute(SPIPreparedStatement.java:263)
at
org.postgresql.pljava.jdbc.SPIPreparedStatement.executeQuery(SPIPreparedStatement.java:72)
at
org.postgresql.pljava.sqlj.Loader.findClass(Loader.java:171)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at
com.echomine.net.SocketConnector$1.run(SocketConnector.java:285)
at java.lang.Thread.run(Thread.java:534)
java.lang.NoClassDefFoundError: alt/java/net/SocketImpl
at com.echomine.net.SocketConnector$1.run(SocketConnector.java:285)
at java.lang.Thread.run(Thread.java:534)
----------
Here is the code generating it.
Class: SocketConnector.java
....
import alt.java.net.SocketImpl;
.....
public void aconnect(final SocketHandler socketHandler, final
ConnectionModel connectionModel) {
Thread thread = new Thread(new Runnable() {
public void run() {
alt.java.net.Socket socket = null;
try {
ConnectionEvent event = new
ConnectionEvent(connectionModel, ConnectionEvent.CONNECTION_STARTING
);
ConnectionEvent vetoEvent = new
ConnectionEvent(connectionModel, ConnectionEvent.CONNECTION_VETO
ED);
fireConnectionStarting(event, vetoEvent);
socketHandler.start();
if (connectionModel.isSSL()) {
socket = new
SocketImpl(negotiateSSLConnection(connectionModel));
} else {
--->>> socket = new SocketImpl(new
Socket(connectionModel.getHost(), connectionModel.getPort()));
}
It appears the class in question is indeed in the jar I load.
Thank you!!!
Darren
Thomas Hallgren wrote:
> Hi Darren,
> What do you mean when you say 'dynamically loaded'? Do you load it
> using an explicit ClassLoader.loadClass() call? And that succeeds?
> Also, when you say 'statically initializes', you you mean that the
> class in question has a static attribute of class SocketImpl, does it
> extend that class, or does it use an explicit ClassLoader inside of a
> static initializer?
>
> Is it a ClassNotFoundException or a NoClassDefFoundError that you are
> experiencing? Can you provide a stack trace?
>
> Regards,
> Thomas Hallgren
>
>
> Darren Govoni wrote:
>> Hi,
>>
>> Running pljava 1.1 with postgres 8.0.3.
>>
>> I have a single jar that contains all my classes. One class
>> 'SocketImpl', is dynamically loaded, however
>> pljava throws a class not found exception when I try to execute a
>> function on a class that statically initializes
>> with 'SocketImpl'. Any tips very appreciated!
>>
>> Cheers,
>> Darren
>> _______________________________________________
>> Pljava-dev mailing list
>> Pljava-dev at gborg.postgresql.org
>> http://gborg.postgresql.org/mailman/listinfo/pljava-dev
>>
>
view thread (5+ messages) latest in thread
Message-ID: <44257C46.6070701@metadapt.com>
Permalink: ../44257C46.6070701@metadapt.com/
Also on: postgresql.org/message-id/44257C46.6070701@metadapt.com
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pljava-dev@postgresql.org
Subject: Re: [Pljava-dev] Cannot find dynamic class
In-Reply-To: <44257C46.6070701@metadapt.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox