[Pljava-dev] Cannot find dynamic class

From: thomas at tada(dot)se (Thomas Hallgren)
To:
Subject: [Pljava-dev] Cannot find dynamic class
Date: 2006-03-25 20:17:21
Message-ID: 4425A551.1090807@tada.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pljava-dev

I forgot. You'll need to use PostgreSQL 8.1 also.

- thomas

Darren Govoni wrote:
> 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
>>>
>>
>

In response to

Browse pljava-dev by date

  From Date Subject
Next Message Darren Govoni 2006-03-26 01:21:42 [Pljava-dev] PostgreSQL 8.1 Pljava install problem
Previous Message Thomas Hallgren 2006-03-25 20:15:40 [Pljava-dev] Cannot find dynamic class