Message4109
This bug seems to be still there by 2009.
This is a blocker preventing to load the best oss ERP - OpenERP - on
Jython cause it uses the reportlab reporting engine and reportlab sets
up large table of char sequences when loading.
Included is the file causing the problem for me. I could verify that
this problem is caused by large lists too.
Indeed, I trimmed all the datastructures intinialized in the _fondata.py
and then it loaded (not attached ws just a test).
The command leading to a crash (either from command line or in OpenERP) is:
from reportlab.platypus import SimpleDocTemplate
of course to try this you should put the reportlab package in your path,
either the last 2.2 release, either trunk from here:
http://www.reportlab.org/downloads.html
The the shown command will result in that stack trace:
>>> from reportlab.platypus import SimpleDocTemplate
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File
"/home/rvalyi/DEV/jython/dist/Lib/reportlab/platypus/__init__.py", line
10, in <module>
from reportlab.platypus.paragraph import Paragraph,
cleanBlockQuotedText, ParaLines
File
"/home/rvalyi/DEV/jython/dist/Lib/reportlab/platypus/paragraph.py", line
9, in <module>
from reportlab.pdfbase.pdfmetrics import stringWidth, getFont,
getAscentDescent
File
"/home/rvalyi/DEV/jython/dist/Lib/reportlab/pdfbase/pdfmetrics.py", line
23, in <module>
from reportlab.pdfbase import _fontdata
java.lang.ClassFormatError: Invalid method Code length 66082 in class
file reportlab/pdfbase/_fontdata$py
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:642)
at
org.python.core.BytecodeLoader$Loader.loadClassFromBytes(BytecodeLoader.java:116)
at org.python.core.BytecodeLoader.makeClass(BytecodeLoader.java:35)
at org.python.core.BytecodeLoader.makeCode(BytecodeLoader.java:65)
at org.python.core.imp.createFromSource(imp.java:231)
at org.python.core.imp.loadFromSource(imp.java:448)
at org.python.core.imp.find_module(imp.java:354)
at org.python.core.PyModule.impAttr(PyModule.java:109)
at org.python.core.imp.import_next(imp.java:554)
at org.python.core.imp.import_name(imp.java:682)
at org.python.core.imp.importName(imp.java:712)
at org.python.core.ImportFunction.__call__(__builtin__.java:1265)
at org.python.core.PyObject.__call__(PyObject.java:337)
at org.python.core.__builtin__.__import__(__builtin__.java:1236)
at org.python.core.imp.importFromAs(imp.java:788)
at org.python.core.imp.importFrom(imp.java:765)
at
reportlab.pdfbase.pdfmetrics$py.f$0(/home/rvalyi/DEV/jython/dist/Lib/reportlab/pdfbase/pdfmetrics.py:822)
at
reportlab.pdfbase.pdfmetrics$py.call_function(/home/rvalyi/DEV/jython/dist/Lib/reportlab/pdfbase/pdfmetrics.py)
at org.python.core.PyTableCode.call(PyTableCode.java:199)
at org.python.core.PyCode.call(PyCode.java:14)
at org.python.core.imp.createFromCode(imp.java:269)
at org.python.core.imp.createFromPyClass(imp.java:117)
at org.python.core.imp.loadFromSource(imp.java:441)
at org.python.core.imp.find_module(imp.java:354)
at org.python.core.PyModule.impAttr(PyModule.java:109)
at org.python.core.imp.import_next(imp.java:554)
at org.python.core.imp.import_logic(imp.java:611)
at org.python.core.imp.import_name(imp.java:667)
at org.python.core.imp.importName(imp.java:712)
at org.python.core.ImportFunction.__call__(__builtin__.java:1265)
at org.python.core.PyObject.__call__(PyObject.java:337)
at org.python.core.__builtin__.__import__(__builtin__.java:1236)
at org.python.core.imp.importFromAs(imp.java:788)
at org.python.core.imp.importFrom(imp.java:765)
at
reportlab.platypus.paragraph$py.f$0(/home/rvalyi/DEV/jython/dist/Lib/reportlab/platypus/paragraph.py:1626)
at
reportlab.platypus.paragraph$py.call_function(/home/rvalyi/DEV/jython/dist/Lib/reportlab/platypus/paragraph.py)
at org.python.core.PyTableCode.call(PyTableCode.java:199)
at org.python.core.PyCode.call(PyCode.java:14)
at org.python.core.imp.createFromCode(imp.java:269)
at org.python.core.imp.createFromPyClass(imp.java:117)
at org.python.core.imp.loadFromSource(imp.java:441)
at org.python.core.imp.find_module(imp.java:354)
at org.python.core.PyModule.impAttr(PyModule.java:109)
at org.python.core.imp.import_next(imp.java:554)
at org.python.core.imp.import_logic(imp.java:611)
at org.python.core.imp.import_name(imp.java:667)
at org.python.core.imp.importName(imp.java:712)
at org.python.core.ImportFunction.__call__(__builtin__.java:1265)
at org.python.core.PyObject.__call__(PyObject.java:337)
at org.python.core.__builtin__.__import__(__builtin__.java:1236)
at org.python.core.imp.importFromAs(imp.java:788)
at org.python.core.imp.importFrom(imp.java:765)
at
reportlab.platypus$py.f$0(/home/rvalyi/DEV/jython/dist/Lib/reportlab/platypus/__init__.py:16)
at
reportlab.platypus$py.call_function(/home/rvalyi/DEV/jython/dist/Lib/reportlab/platypus/__init__.py)
at org.python.core.PyTableCode.call(PyTableCode.java:199)
at org.python.core.PyCode.call(PyCode.java:14)
at org.python.core.imp.createFromCode(imp.java:269)
at org.python.core.imp.createFromPyClass(imp.java:117)
at org.python.core.imp.loadFromSource(imp.java:441)
at org.python.core.imp.find_module(imp.java:354)
at org.python.core.PyModule.impAttr(PyModule.java:109)
at org.python.core.imp.import_next(imp.java:554)
at org.python.core.imp.import_logic(imp.java:611)
at org.python.core.imp.import_name(imp.java:667)
at org.python.core.imp.importName(imp.java:712)
at org.python.core.ImportFunction.__call__(__builtin__.java:1265)
at org.python.core.PyObject.__call__(PyObject.java:337)
at org.python.core.__builtin__.__import__(__builtin__.java:1236)
at org.python.core.imp.importFromAs(imp.java:788)
at org.python.core.imp.importFrom(imp.java:765)
at org.python.pycode._pyx23.f$0(<stdin>:1)
at org.python.pycode._pyx23.call_function(<stdin>)
at org.python.core.PyTableCode.call(PyTableCode.java:199)
at org.python.core.PyCode.call(PyCode.java:14)
at org.python.core.Py.runCode(Py.java:1206)
at org.python.core.Py.exec(Py.java:1237)
at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:133)
at
org.python.util.InteractiveInterpreter.runcode(InteractiveInterpreter.java:90)
at
org.python.util.InteractiveInterpreter.runsource(InteractiveInterpreter.java:71)
at
org.python.util.InteractiveInterpreter.runsource(InteractiveInterpreter.java:46)
at org.python.util.InteractiveConsole.push(InteractiveConsole.java:110)
at org.python.util.InteractiveConsole.interact(InteractiveConsole.java:90)
at org.python.util.jython.run(jython.java:293)
at org.python.util.jython.main(jython.java:113)
java.lang.ClassFormatError: java.lang.ClassFormatError: Invalid method
Code length 66082 in class file reportlab/pdfbase/_fontdata$py
>>>
Hope this helps.
Guys this is really an annoying bug for us, I see no workaround, so if
you could fix it, that would just help having a super great oss ERP on
the Java platform.
Raphaƫl Valyi. |
|
Date |
User |
Action |
Args |
2009-01-29 23:24:00 | rvalyi | set | messageid: <1233271440.99.0.225474448786.issue527524@psf.upfronthosting.co.za> |
2009-01-29 23:24:00 | rvalyi | set | recipients:
+ rvalyi, leouserz, kevinbutler, p2sam, ericmoore |
2009-01-29 23:24:00 | rvalyi | link | issue527524 messages |
2009-01-29 23:24:00 | rvalyi | create | |
|