Lin Sun wrote:
Hi there,
I have a simple jsp application that worked on 1.0. It displays the
contents of the EMP table of the Employee database.
I am using the embedded derby database and the
tranql-connector-derby-embed-xa-1.1 rar file in Geronimo 1.1 build
(geronimo-tomcat-j2ee-1.1-410806).
The server wide datasource and application war file deployed fine.
However, when I access the jsp from my firefox browser, I got the following
exception
in the console when the server is trying to get the database connection:
== SNIP ===
Hi Lin -
The few times I have seen a NullPointerException while trying to start a
Derby database have been caused by the Derby embedded driver being
loaded by multiple classloaders in a JVM. Could it be that your JSP is
causing the embedded driver to loaded? Isn't it true that the server
wide datasource should be starting the database when Geronimo starts
rather than this happening when the JSP is called?
The fact that this fails with version 1.1 and not 1.0 might be because
of classloader changes that were implemented since 1.0.
Any thoughts on this theory from people knowledgeable about the the
Geronimo 1.1 JSP classloader hierarchy?
>>> Derby Start exception:
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:684)
at java.lang.Thread.run(Thread.java:568)
org.apache.derby.impl.jdbc.EmbedSQLExceptionFailed to start database
'Employee',
see the next exception for details.
java.lang.NullPointerException
at
org.apache.jsp.jsp.EMPdemo_jsp._jspService(org.apache.jsp.jsp.EMPdemo
_jsp:70)