To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=80338
User sb changed the following:
What |Old value |New value
================================================================================
Assigned to|sb |oj
--------------------------------------------------------------------------------
------- Additional comments from [EMAIL PROTECTED] Mon Aug 6 11:04:35 +0000
2007 -------
@oj: "It seems that this line overwrites existing jar files." No, that line
specifies the JVM's classpath. With a standard, Sun-built OOo, the JVM
classpath is empty (so the line is missing entirely). With a build that is
configured --with-system-hsqldb, the JVM classpath contains hsqldb.jar (in some
system location), but not sdbc_hsqldb.jar. However, with the current code, code
from hsqldb.jar tries to load a class from sdbc_hsqldb.jar with Class.forName.
That only works if the code from hsqldb.jar has been loaded with a classloader
that is a (reflexive, transitive) child of a classloader able to load from
sdbc_hsqldb.jar. The assumption that this works is broken when configuring OOo
--with-system-hsqldb: hsqldb.jar is loaded by the JVM's application classloader
(as it is on the classpath), whereas sdbc_hsqldb.jar is only known to some more
specific classloader that is a (transitive) child of the application
classloader. So, the current code is broken.
I can think of several ways how to fix that:
1 In Database.java from above, instead of only passing a fileaccess_class_name
property, also pass information where that class can be found (e.g., a URL with
which an appropriate classloader can be created; caveat: that could result in
the StorageFileAccess class being loaded multiple times by different,
incompatible classloaders).
2 In Database.java from above, instead of Class.forName use
Thread.getContextClassLoader to load the class, and at some appropriate place
down the call stack set an appropriate context classloader.
3 As a quick hack, at scp2/source/ooo/profileitem_ooo.scp:1.49 l. 874--876 also
add (the OOo-local program/classes/...) sdbc_hsqldb.jar to
UNO_JAVA_JFW_CLASSPATH_URLS if SYSTEM_HSQLDB is defined.
---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]