[Pljava-dev] Class Loading issues

From: JY at coalition(dot)com (John Yeung)
To:
Subject: [Pljava-dev] Class Loading issues
Date: 2009-07-22 16:56:49
Message-ID: 519DE98D62C54D4A896E22A026CF13223D5BE7@cdlon-ex.CoalitionDev.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pljava-dev

Hi -

1. Please see error log below. I can possibly see why its failing as the
ClassLoader being used does not know about my application jar(installed
via sqlj.install_jar).. I can fix this problem by adding the necessary
jars into pljava.jar, but the docs say not to do this. What is the
recommended solution?

2. The JVM is crashing because I've got some code that gets called in
TransactionListener.onCommit() and at some point the JVM must be trying
to load a class definition. So sqlj.Loader.findClass() is called which
executes some SQL. I vaguely remember reading a post to say, in your
code, don't do any SQL... ? Is there a recommended solution to this
problem?

3. I've tried specifying the JVM option "-server" but the JVM fails to
start up, is this possible?

Thanks in advance.

Thanks -
John.

2009-07-22 16:46:59 BST DEBUG: Added JVM option string
"-Djava.class.path=C:/Program
Files/PostgreSQL/8.3/share/pljava/pljava.jar;.;C:\Program
Files\Java\jre6\lib\ext\QTJava.zip"
2009-07-22 16:46:59 BST DEBUG: Added JVM option string
"-Dsqlj.defaultconnection=jdbc:default:connection"
2009-07-22 16:46:59 BST DEBUG: Added JVM option string "vfprintf"
2009-07-22 16:46:59 BST DEBUG: Added JVM option string "-Xrs"
2009-07-22 16:46:59 BST DEBUG: Creating JavaVM
2009-07-22 16:47:00 BST DEBUG: JavaVM created
2009-07-22 16:47:00 BST DEBUG: Getting Backend class pljava.jar
2009-07-22 16:47:00 BST DEBUG: Backend class was there
2009-07-22 16:47:00 BST DEBUG: 22 Jul 09 16:47:00
org.postgresql.pljava.internal.Backend Using SecurityManager for trusted
language
2009-07-22 16:47:00 BST DEBUG: 22 Jul 09 16:47:00
org.postgresql.pljava.sqlj.Loader Creating typeMappings for schema dbjms
2009-07-22 16:47:00 BST DEBUG: Loading class
com.x.y.dbjms.PLJUpdatesPublisher
2009-07-22 16:47:00 BST DEBUG: Obtaining method
com.x.y.dbjms.PLJUpdatesPublisher.init ()I
javax.naming.NoInitialContextException: Cannot instantiate class:
org.jnp.interfaces.NamingContextFactory [Root exception is
java.lang.ClassNotFoundException:
org.jnp.interfaces.NamingContextFactory]
at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657)
at
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at
com.sangha.server.dbjms.UpdatesPublisher.openConnection(UpdatesPublisher
.java:80)
at
com.sangha.server.dbjms.PLJUpdatesPublisher.init(PLJUpdatesPublisher.jav
a:36)
Caused by: java.lang.ClassNotFoundException:
org.jnp.interfaces.NamingContextFactory
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 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at
com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.java:4
2)
at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:654)
... 5 more

2009-07-22 16:47:00 BST ERROR: javax.naming.NoInitialContextException:
Cannot instantiate class: org.jnp.interfaces.NamingContextFactory

Coalition Development Ltd 1st Floor, One Newhams Row, London, United Kingdom, SE1 3UZ
Registration Number - 04328897 Registered Office - Direct Control 3rd Floor, Marvic House, Bishops Road, London, United Kingdom, SW6 7AD

Browse pljava-dev by date

  From Date Subject
Next Message Gabriel Holmes 2009-07-30 03:23:18 [Pljava-dev] Hi all
Previous Message Andrzej Zawadzki 2009-07-20 18:33:31 [Pljava-dev] Compilation for PostgreSQL 8.4