Hi,

In my experience, LinkageError is a symptom of a build issue or a classpath issue. It usually means that the methods defined in an interface are not defined in a class that claims to implement that interface. For example, if you build your application using version 3.0 of some library and then execute the program with version 4.0 of the library, where a method of the library has changed its signature. Or build with version 4.0 and execute with 3.0 that doesn't implement a method in the interface.

A classpath issue might be if you have different versions of Derby available in Tomcat and some of the classes are from one version of Derby and some others from a different version.

NoPutResultSet implements ResultSet. What you're describing would happen if you used a JDBC 3.0 ResultSet with a version of Derby that didn't support the JDBC 3.0 methods. But I don't know how that could happen.

You mentioned that "I've started throwing...LinkageErrors". What changed in your environment between working ok and throwing Errors?

Regards,

Craig

On Oct 30, 2005, at 6:06 AM, Simon J Whittle wrote:

Dear All,

This is my first post to this list so my apologies for any conventions/rules I've inadvertently broken :-) My situation is as follows: there is a commercial application called BlackBoard which is used by universities to provide learning resources to students, it's built upon Apache Tomcat and allows 3rd parties to develop "Building Blocks" (separate tomcat webapps) which can be integrated into the main BlackBoard application. As part of my Building Block I have a servlet which creates a database (using the Cloudscape 10.0 library), and despite a few hic-ups on the learning curve it uses Java commands to create the database and it seemed to work fine.

However I've started throwing some bizarre LinkageError's (see subject) when querying the database, and so I thought I'd try the latest (10.1.1.0) Derby library except this time I get "SQL Exception: Java exception: 'loader constraints violated when linkingorg/apache/derby/iapi/sql/execute/NoPutResultSet class: java.lang.LinkageError'" when I'm actually creating the tables and inserting a value for the first time (this didn't cause any problems with the Cloudscape library). If anybody has encountered anything like this before then I'd appreciate any assistance - is it a bug or something I'm doing wrong on my part? Is there a workaround? I searched http://issues.apache.org/jira for LinkageError but nothing seemed to be directly related.

Thanks in anticipation.

Simon Whittle



Reply via email to