I don't know if this is expected, but I get a Nullpointerexception when I implement a proxy function and the 'interface' isn't 'imported'. For example, I was refactoring some code and didn't carry over the import and get this nullpointerexception error. Obviously, I should just add the import, but I wish the error message were more descriptive.
Copied this code: Note: I didn't define the import 'ShellAdapter' (defn shell-close-adapter " Create a proxy used with a SWT widget 'addShellListener'" [cur-shell] ;;;;;;;;;;;;; (proxy [ShellAdapter][] (shellClosed [event] (set! (. event doit) false) (. cur-shell setVisible false)))) ----------- java.lang.NullPointerException (octane_utils.clj:131) at clojure.lang.Compiler.analyzeSeq(Compiler.java:4113) at clojure.lang.Compiler.analyze(Compiler.java:3935) at clojure.lang.Compiler.analyze(Compiler.java:3908) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:3613) at clojure.lang.Compiler$FnMethod.parse(Compiler.java:3456) at clojure.lang.Compiler$FnMethod.access$1100(Compiler.java:3335) at clojure.lang.Compiler$FnExpr.parse(Compiler.java:2921) at clojure.lang.Compiler.analyzeSeq(Compiler.java:4104) at clojure.lang.Compiler.analyze(Compiler.java:3935) at clojure.lang.Compiler.analyzeSeq(Compiler.java:4094) at clojure.lang.Compiler.analyze(Compiler.java:3935) at clojure.lang.Compiler.access$100(Compiler.java:38) at clojure.lang.Compiler$DefExpr$Parser.parse(Compiler.java:366) at clojure.lang.Compiler.analyzeSeq(Compiler.java:4106) at clojure.lang.Compiler.analyze(Compiler.java:3935) at clojure.lang.Compiler.analyzeSeq(Compiler.java:4094) at clojure.lang.Compiler.analyze(Compiler.java:3935) at clojure.lang.Compiler.analyze(Compiler.java:3908) at clojure.lang.Compiler.eval(Compiler.java:4146) at clojure.lang.Compiler.load(Compiler.java:4470) at clojure.lang.RT.loadResourceScript(RT.java:327) at clojure.lang.RT.loadResourceScript(RT.java:316) at clojure.lang.RT.load(RT.java:406) at clojure.lang.RT.load(RT.java:376) at clojure.core$load__4557$fn__4559.invoke(core.clj:3427) at clojure.core$load__4557.doInvoke(core.clj:3426) at clojure.lang.RestFn.invoke(RestFn.java:413) at clojure.core$load_one__4520.invoke(core.clj:3271) at clojure.core$load_lib__4540.doInvoke(core.clj:3308) at clojure.lang.RestFn.applyTo(RestFn.java:147) at clojure.core$apply__2869.doInvoke(core.clj:374) at clojure.lang.RestFn.invoke(RestFn.java:443) at clojure.core$load_libs__4544.doInvoke(core.clj:3334) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply__2869.doInvoke(core.clj:374) at clojure.lang.RestFn.invoke(RestFn.java:460) at clojure.core$use__4551.doInvoke(core.clj:3404) at clojure.lang.RestFn.invoke(RestFn.java:938) at user$eval__1.invoke(octane_main_window.clj:28) at clojure.lang.Compiler.eval(Compiler.java:4142) at clojure.lang.Compiler.load(Compiler.java:4470) at clojure.lang.Compiler.loadFile(Compiler.java:4437) at clojure.lang.Repl.main(Repl.java:66) Caused by: java.lang.NullPointerException at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:26) at clojure.core$get_super_and_interfaces__4708.invoke(core_proxy.clj: 195) at clojure.core$proxy__4729.doInvoke(core_proxy.clj:270) at clojure.lang.RestFn.invoke(RestFn.java:445) at clojure.lang.Var.invoke(Var.java:335) at clojure.lang.AFn.applyToHelper(AFn.java:180) at clojure.lang.Var.applyTo(Var.java:444) at clojure.lang.Compiler.macroexpand1(Compiler.java:4025) at clojure.lang.Compiler.analyzeSeq(Compiler.java:4092) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---