On Thu, 18 Jun 2009, Ludovico Cavedon wrote:

Andi Vajda wrote:
On Wed, 17 Jun 2009, Ludovico Cavedon wrote:

* If I get an error
jcc.cpp.JavaError: java.lang.ExceptionInInitializerError
I actually added a "print className" to understand which class was
causing the error

In JCCEnv.cpp I had to decomment the
        if (!env->handlers)
in order to execute
        vm_env->ExceptionDescribe();
and see the java backtrace. I think it would be useful to print it by
default.

It's actually tricky to get right. Printing them by default will get you lots of errors that are properly handled such as failed method look ups in JCC itself.

I think a better fix would be to wrap the error reported by findClass with more context information. A plain class not found error already reports the failed class's name:

  File 
"/Users/vajda/tmp/Python-2.6.2/install/Python.framework/Versions/2.6/lib/python2.6/site-packages/JCC-2.3-py2.6-macosx-10.5-i386.egg/jcc/cpp.py",
 line 370, in jcc
    for className in excludes])
jcc.cpp.JavaError: java.lang.NoClassDefFoundError: 
org/apache/lucene/queryParser/Token1

I'm going to implement some findClass error wrapping now.

Andi..

Reply via email to