From: Sandra J. <san...@gm...> - 2010-01-11 23:30:44
|
Dear All, I am new to Jython and decided to try the code supplied in the monthly Newsletters of September and October 2006 as I want to be able to write some object factories for Python classes. I am coding and testing in Eclipse vsn 3.5.1 with PyDev plugin installed, Jython 2.5.1 and JRE 6 I copied the code from the newsletters and changed the classes that differed between the two newsletters to have either Sep or Oct in them to distinguish where they came from. I have spent ages trying to find the problem and getting nowhere. One suggestion in an earlier post was to include into the python class import sys sys.add_package(' java package' ) - so I added this code as well for the java package 'jyinterface.interfaces' but to no avail, same NullPointerException & ExceptionInInitializerError. The only differences between my code and the code provided by Charlie Groves and Josh Juneau are java class name changes (MainSep.java, MainOct.java in package jyinterface.interfaces, EmployeeOct.py and EmployeeSep.py in the Jython project and I put MainSep.java not in package jyinterface as Josh had, but in the jyinterface.interfaces package). I also updated the references to these classes. Here is the console output I get. Happy to supply the code if anyone feels kind enough to have a look! Exception in thread "main" java.lang.ExceptionInInitializerError at org.python.core.PyObject.<clinit>(PyObject.java:26) at org.python.util.PythonInterpreter.<init>(PythonInterpreter.java:72) at org.python.util.PythonInterpreter.<init>(PythonInterpreter.java:60) at jyinterface.factory.EmployeeFactory.<init>(EmployeeFactory.java:13) at jyinterface.interfaces.MainOct.main(MainOct.java:18) Caused by: java.lang.NullPointerException at org.python.core.PyType.init(PyType.java:458) at org.python.core.PyType.createType(PyType.java:1175) at org.python.core.PyType.addFromClass(PyType.java:1116) at org.python.core.PyType.fromClass(PyType.java:1182) at org.python.core.PyType.<clinit>(PyType.java:30) ... 5 more The lines that are being referred to in the error log are MainOct.java:18 EmployeeFactory factory = new EmployeeFactory(); EmployeeFactory.java:13 PythonInterpreter interpreter = new PythonInterpreter(); PythonInterpreter.java:60 public PythonInterpreter() { // line 59 this(null, null); // line 60 PythonInterpreter.java:72 dict = new PyStringMap(); PyObject.java:26 public static final PyType TYPE = PyType.fromClass(PyObject.class); PyType.java:458 if (!Py.BOOTSTRAP_TYPES.contains(underlying_class)) { PyType.java:1175 newtype.init(c,needsInners); PyType.java:1116 return createType(c, needsInners); PyType.java:1182 addFromClass(PyType.class, null); PyType.java:30 public static PyType TYPE = fromClass(PyType.class); Cheers, Sandra |