Good! -+ Tatu +-
On Fri, Nov 17, 2023 at 12:33 PM thom...@gmail.com <thomh...@gmail.com> wrote: > > Thanks, that fixed it. > > On Friday, November 17, 2023 at 3:14:42 PM UTC-5 Tatu Saloranta wrote: >> >> Typically you would file an issue for the component mentioned. >> >> But in this case you need -- as per my other answer -- another >> property, annotated with `@JacksonXmlText`, to map character data >> into. >> >> Hope this helps, >> >> -+ Tatu +- >> >> On Fri, Nov 17, 2023 at 11:16 AM thom...@gmail.com <thom...@gmail.com> wrote: >> > >> > I tried debugging this and it looks like a bug in the tokenizer. I am >> > parsing XML using Jackson and am working on the following line: >> > >> > <w lemma="2377" n="1.0" morph="HNcmsc" id="31xeN">חֲז֖וֹן</w> >> > >> > I am parsing into the following code: >> > >> > package org.forerunnerintl.xlate.text.osis; >> > >> > import com.fasterxml.jackson.annotation.JsonIgnore; >> > import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; >> > >> > public class OsisWord { >> > private String id; >> > private String lemma; >> > private String morph; >> > @JacksonXmlProperty(isAttribute = true, localName = "n") >> > private String noteId; >> > >> > public String getId() { >> > return id; >> > } >> > >> > public void setId(String id) { >> > this.id = id; >> > } >> > >> > public String getLemma() { >> > return lemma; >> > } >> > >> > public void setLemma(String lemma) { >> > this.lemma = lemma; >> > } >> > >> > public String getMorph() { >> > return morph; >> > } >> > >> > public void setMorph(String morph) { >> > this.morph = morph; >> > } >> > >> > public String getNoteId() { >> > return noteId; >> > } >> > >> > public void setNoteId(String noteId) { >> > this.noteId = noteId; >> > } >> > } >> > >> > And here's my error: >> > >> > java.lang.RuntimeException: >> > com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: >> > Unrecognized field "" (class org.forerunnerintl.xlate.text.osis.OsisWord), >> > not marked as ignorable (4 known properties: "lemma", "id", "n", "morph"]) >> > at [Source: (File); line: 321, column: 72] (through reference chain: >> > org.forerunnerintl.xlate.text.osis.OsisDocument["osisText"]->org.forerunnerintl.xlate.text.osis.OsisText["div"]->org.forerunnerintl.xlate.text.osis.OsisBook["chapter"]->java.util.ArrayList[0]->org.forerunnerintl.xlate.text.osis.OsisChapter["verse"]->java.util.ArrayList[0]->org.forerunnerintl.xlate.text.osis.OsisVerse["w"]->java.util.ArrayList[0]->org.forerunnerintl.xlate.text.osis.OsisWord[""]) >> > at >> > org.forerunnerintl.xlate.text.osis.OsisReader.readFile(OsisReader.java:17) >> > at org.forerunnerintl.xlate.text.OsisReaderTest.Read >> > OSIS(OsisReaderTest.groovy:24) >> > Caused by: >> > com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: >> > Unrecognized field "" (class org.forerunnerintl.xlate.text.osis.OsisWord), >> > not marked as ignorable (4 known properties: "lemma", "id", "n", "morph"]) >> > at [Source: (File); line: 321, column: 72] (through reference chain: >> > org.forerunnerintl.xlate.text.osis.OsisDocument["osisText"]->org.forerunnerintl.xlate.text.osis.OsisText["div"]->org.forerunnerintl.xlate.text.osis.OsisBook["chapter"]->java.util.ArrayList[0]->org.forerunnerintl.xlate.text.osis.OsisChapter["verse"]->java.util.ArrayList[0]->org.forerunnerintl.xlate.text.osis.OsisVerse["w"]->java.util.ArrayList[0]->org.forerunnerintl.xlate.text.osis.OsisWord[""]) >> > at >> > com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:61) >> > at >> > com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:1153) >> > at >> > com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:2224) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1719) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1697) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:316) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:177) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer._deserializeFromArray(CollectionDeserializer.java:359) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:244) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:28) >> > at >> > com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:310) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:177) >> > at >> > com.fasterxml.jackson.dataformat.xml.deser.WrapperHandlingDeserializer.deserialize(WrapperHandlingDeserializer.java:122) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer._deserializeFromArray(CollectionDeserializer.java:359) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:244) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:28) >> > at >> > com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:310) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:177) >> > at >> > com.fasterxml.jackson.dataformat.xml.deser.WrapperHandlingDeserializer.deserialize(WrapperHandlingDeserializer.java:122) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer._deserializeFromArray(CollectionDeserializer.java:359) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:244) >> > at >> > com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:28) >> > at >> > com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:310) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:177) >> > at >> > com.fasterxml.jackson.dataformat.xml.deser.WrapperHandlingDeserializer.deserialize(WrapperHandlingDeserializer.java:122) >> > at >> > com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:310) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:177) >> > at >> > com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:310) >> > at >> > com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:177) >> > at >> > com.fasterxml.jackson.dataformat.xml.deser.XmlDeserializationContext.readRootValue(XmlDeserializationContext.java:104) >> > at >> > com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4899) >> > at >> > com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3711) >> > at >> > org.forerunnerintl.xlate.text.osis.OsisReader.readFile(OsisReader.java:15) >> > ... 1 more >> > >> > Column 72 is at the end of the line, BTW. >> > >> > So I have committed my code and it is at >> > https://github.com/ThomHehl/xlate. Fortunately, it's an open source >> > project, so this isn't a problem. >> > >> > You can recreate the error by running the spock test OsisReaderTest >> > directly or by running gradlew test from the command line. >> > >> > This is com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.16.0. >> > >> > Thanks. >> > >> > -- >> > You received this message because you are subscribed to the Google Groups >> > "jackson-user" group. >> > To unsubscribe from this group and stop receiving emails from it, send an >> > email to jackson-user...@googlegroups.com. >> > To view this discussion on the web visit >> > https://groups.google.com/d/msgid/jackson-user/c991f307-b1e2-49d0-bb08-e87955b92054n%40googlegroups.com. > > -- > You received this message because you are subscribed to the Google Groups > "jackson-user" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jackson-user+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jackson-user/2df0e6d5-b88b-458e-9c7b-66bf0f63efd8n%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "jackson-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to jackson-user+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jackson-user/CAL4a10j%3DF7oO1XqvxPrgGAw_uxS8aeiEbdDCcOtH%2B3M%3DWVnohA%40mail.gmail.com.