Hello.
I needed to parse and emit some xml, that has no namespaces and there
should be no extra whitespace that is added by clojure.xml.
Decided to try using clojure.data.xml. And for me it fails as soon as the
total size of an element reaches 33 symbols.
This happens only when I use some kind of input stream(either
java.io.FileInputStream or io/input-stream wrapper). Just doing (parse-str
(slurp file)) works.
So, when I have a file containing only this:
<t>aaaaaaaaaaaaaaaaaaaaaaaaaa</t>
I get this exception:
1. Unhandled javax.xml.stream.XMLStreamException
ParseError at [row,col]:[1,33] Message: Stream Closed
nil: -1
com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl/next
xml.clj: 287 clojure.data.xml/pull-seq/fn
LazySeq.java: 42 clojure.lang.LazySeq/sval
LazySeq.java: 60 clojure.lang.LazySeq/seq
RT.java: 484 clojure.lang.RT/seq
core.clj: 133 clojure.core/seq
xml.clj: 178 clojure.data.xml/seq-tree/fn
LazySeq.java: 42 clojure.lang.LazySeq/sval
LazySeq.java: 60 clojure.lang.LazySeq/seq
LazySeq.java: 82 clojure.lang.LazySeq/first
RT.java: 577 clojure.lang.RT/first
core.clj: 55 clojure.core/first
xml.clj: 187 clojure.data.xml/seq-tree/fn/fn
LazySeq.java: 42 clojure.lang.LazySeq/sval
LazySeq.java: 60 clojure.lang.LazySeq/seq
Cons.java: 39 clojure.lang.Cons/next
RT.java: 598 clojure.lang.RT/next
core.clj: 64 clojure.core/next
core.clj: 2809 clojure.core/nthnext
core_print.clj: 57 clojure.core/print-sequential
core_print.clj: 143 clojure.core/fn
MultiFn.java: 231 clojure.lang.MultiFn/invoke
core.clj: 3322 clojure.core/pr-on
core_print.clj: 200 clojure.core/print-map/fn
core_print.clj: 58 clojure.core/print-sequential
core_print.clj: 203 clojure.core/print-map
core_print.clj: 260 clojure.core/fn
MultiFn.java: 231 clojure.lang.MultiFn/invoke
core.clj: 3322 clojure.core/pr-on
core_print.clj: 58 clojure.core/print-sequential
core_print.clj: 194 clojure.core/fn
MultiFn.java: 231 clojure.lang.MultiFn/invoke
pr_values.clj: 26
clojure.tools.nrepl.middleware.pr-values/pr-values/fn/reify
interruptible_eval.clj: 84
clojure.tools.nrepl.middleware.interruptible-eval/evaluate/fn/fn
main.clj: 260 clojure.main/repl/read-eval-print
main.clj: 277 clojure.main/repl/fn
main.clj: 277 clojure.main/repl
RestFn.java: 1523 clojure.lang.RestFn/invoke
interruptible_eval.clj: 72
clojure.tools.nrepl.middleware.interruptible-eval/evaluate/fn
AFn.java: 159 clojure.lang.AFn/applyToHelper
AFn.java: 151 clojure.lang.AFn/applyTo
core.clj: 617 clojure.core/apply
core.clj: 1788 clojure.core/with-bindings*
RestFn.java: 425 clojure.lang.RestFn/invoke
interruptible_eval.clj: 56
clojure.tools.nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 188
clojure.tools.nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn
interruptible_eval.clj: 157
clojure.tools.nrepl.middleware.interruptible-eval/run-next/fn
AFn.java: 24 clojure.lang.AFn/run
nil: -1
java.util.concurrent.ThreadPoolExecutor/runWorker
nil: -1
java.util.concurrent.ThreadPoolExecutor$Worker/run
nil: -1 java.lang.Thread/run
The way you get to 33 symbols does not matter. This would give you the same
error:
<tttttttttt>aaaaaaaa</tttttttttt>
Any ideas?
--
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
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.