草庐IT

Jackson2

全部标签

java - com.fasterxml.jackson.databind.JsonMappingException : No content to map due to end-of-input

我需要用javaPOJO类映射一个JSON数组对象。我写的代码是这样的://executetheclientwithgetmethodInputStreaminputStream=getMethod.getResponseBodyAsStream();BufferedReaderbufferedReader=newBufferedReader(newInputStreamReader(inputStream));ObjectMapperobjectMapper=newObjectMapper();JsonFactoryjsonFactory=newJsonFactory();Listo

com/fasterxml/jackson/databind/ObjectMapper 与 Maven 的 java.lang.ClassNotFoundException/NoClassDefFoundError

尝试运行使用jackon的ObjectMapper类的java程序时出现以下错误:Exceptioninthread"main"java.lang.NoClassDefFoundError:com/fasterxml/jackson/databind/ObjectMapperatcom.inin.dynamotransfer.DynamoTransfer.importData(DynamoTransfer.java:133)atcom.inin.dynamotransfer.DynamoTransfer.main(DynamoTransfer.java:67)Causedby:java

java - 无法使用(反)序列化 Jackson 中具有多态项的列表

我有一个问题(反)序列化JSON,这不是我定义的。这里有一些代码和JSON解释了这个问题:代码:publicstaticclassBase{publicStringklass="base";}publicstaticclassSubBaseextendsBase{}publicstaticclassSub1extendsSubBase{publicSub1(){klass="Sub1";}}publicstaticclassSub2extendsSubBase{publicSub2(){klass="Sub2";}}publicstaticclassHolder{@JsonTypeIn

java - 在运行时使用 Jackson 为多态添加 SubType 信息

我正在使用Jackson从JSON中解码多态类型。我正在使用类似于thispost中示例4的@JsonTypeInfo、@JsonSubTypes和@JsonTypeName注释.我的问题是,假设现在我需要其他人扩展我的代码并添加第3类:publicclassDuckextendsAnimal在原始代码库之外。我(或其他人)如何在不修改publicabstractAnimalclass的源代码(注释)的情况下添加SubType信息?更新:我被迫使用@JsonTypeName来解决POJO版本的变化。例如:packagemy.zoo;@JsonTypeInfo(use=JsonTypeI

java - Jackson - 动态抑制属性的序列化(写入)

我正在尝试使用Jackson在Tomcat/jersey中将java对象转换为JSON对象。并希望动态抑制某些属性的序列化(写入)。我可以使用JsonIgnore,但我想在运行时做出忽略决定。有什么想法吗??因此作为下面的示例,我想在将用户对象序列化为JSON时抑制“id”字段。newObjectMapper.writeValueAsString(user);classUser{privateStringid=null;privateStringfirstName=null;privateStringlastName=null;//getters//setters}//endclass

Java 无法将枚举用作注释的字符串参数(例如 : Jackson)

我正在编写使用Jackson的Java代码用于JSON序列化。我必须在我的类(class)之前使用的一个注释是@JsonTypeName(/*Insertstringhere*/),以便为此类的对象提供唯一的序列化标识符。在我当前的代码中,我们通过使用来自另一个类的全局常量来设置String参数。示例:publicclassAnnotationValues{privatestaticfinalStringid1="1";privatestaticfinalStringid2="2";privatestaticfinalStringid3="3";//Andsoon...}使用这个类,我

java - 使用 Jackson 实现 Collection 的类的反序列化失败

我有以下JSON:{"item":[{"foo":1},{"foo":2}]}这基本上是一个包含项目集合的对象。所以我做了一个类来反序列化:publicclassItemList{@JsonProperty("item")Listitems;//Getters,setters&co.//...}到目前为止一切正常。现在,为了让我在其他地方的生活更轻松,我决定能够迭代ItemList对象并让它实现Collection接口(interface)会很好。所以基本上我的类(class)变成了:publicclassItemListimplementsCollection,Iterable{@J

java - 嵌套 Jackson WRAPPER_OBJECT 的多层

我绝不是Jackon/JSON向导,这可能从我遇到的以下问题中可以看出:我收到了2种可能的数据结构。第一个称为amountTransaction:{"amountTransaction":{"clientCorrelator":"54321","endUserId":"tel:+16309700001"}}它由以下Java对象表示:@JsonIgnoreProperties(ignoreUnknown=true)@JsonTypeInfo(use=JsonTypeInfo.Id.NAME,include=JsonTypeInfo.As.WRAPPER_OBJECT)@JsonTypeN

java - JsonMappingException 无单字符串构造函数/工厂方法 Jackson

我正在尝试使用SpringbuildJackson支持在我的Controller中解析从UI发送的JSON数据,这是我的代码finalMapentriesToUpdateMap=newObjectMapper().readValue(entriesToUpdate,newTypeReference>()我的JSON字符串是{"0":"{\"categoryCode\":\"shoes\",\"productCode\":\"300050253\",\"initialQty\":\"3\",\"leftoverQty\":\"0\",\"newQty\":\"3\"}","1":"{\"

java - jackson 多态性 : How to map multiple subtypes to the same class

我使用的是Jackson1.9.x。坚持以动物为例,这是我想做的:假设我有一个Animal类:publicclassAnimal{privateStringtype;//accessors}publicclassMammalextendsAnimal{privateStringdiet;//accessors}publicclassBirdextendsAnimal{privatebooleantropical;//accessors}我希望能够做这样的事情(我将几个子类型映射到一个类,再将几个子类型映射到另一个类):@JsonTypeInfo(use=Id.NAME,include=