I'm trying to do a simple print-json, and am getting a ClassCastException in
the data.json library. I'm using [org.clojure/clojure "1.3.0-beta1"] and
[org.clojure/data.json "0.1.0"]. So…


*> lein repl *

*…*

*user => (require 'clojure.data.json)*

*nil *

*
*

*user => (clojure.data.json/print-json "tim")*

*ClassCastException java.io.OutputStreamWriter cannot be cast to
java.io.PrintWriter  clojure.data.json/write-json-string (json.clj:229)*

*
*

*user=> (clojure.data.json/print-json [1 2 3]) *

*ClassCastException java.io.OutputStreamWriter cannot be cast to
java.io.PrintWriter  clojure.data.json/write-json-array (json.clj:254)*

*
*

*user => (clojure.data.json/print-json { :a { :aa "b" } } ) *

*ClassCastException java.io.OutputStreamWriter cannot be cast to
java.io.PrintWriter  clojure.data.json/write-json-object (json.clj:238)*



Seems fairly straightforward (I've also tried on lists, nested hashes, etc).
If I look at the source for
json:229<https://github.com/clojure/data.json/blob/master/src/main/clojure/clojure/data/json.clj>
,
the 'out' variable looks to be a PrintWriter (and my local source version is
the same). And a stacktrace gives exactly that location


*user=> (. *e printStackTrace)*

*java.lang.ClassCastException: java.io.OutputStreamWriter cannot be cast to
java.io.PrintWriter*

*        at clojure.data.json$write_json_string.invoke(json.clj:229)*

*        at
clojure.data.json$eval108$fn__109$G__99__118.invoke(json.clj:201)*

*        at clojure.data.json$print_json.doInvoke(json.clj:331)*

*        at clojure.lang.RestFn.invoke(RestFn.java:410)*

*        at user$eval212.invoke(NO_SOURCE_FILE:24)*

*        at clojure.lang.Compiler.eval(Compiler.java:6406)*

*        at clojure.lang.Compiler.eval(Compiler.java:6372)*

*        at clojure.core$eval.invoke(core.clj:2745)*

*        at clojure.main$repl$read_eval_print__6016.invoke(main.clj:244)*

*        at clojure.main$repl$fn__6021.invoke(main.clj:265)*

*        at clojure.main$repl.doInvoke(main.clj:265)*

*        at clojure.lang.RestFn.invoke(RestFn.java:512)*

*        at user$eval7$acc__1060__auto____8$fn__10.invoke(NO_SOURCE_FILE:1)*

*        at clojure.lang.AFn.run(AFn.java:24)*

*        at java.lang.Thread.run(Thread.java:636)*

*nil*

*user=>*



Is there a problem in the data.json lib?


Tim

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to