WW-4537 Support for latest jackson lib as json content handler in rest plugin

This commit is contained in:
Johannes Geppert
2015-08-23 13:45:38 +02:00
parent 3bd1b7a723
commit 0fac53954a
2 changed files with 14 additions and 12 deletions
+8 -5
View File
@@ -34,7 +34,7 @@
<packaging>jar</packaging>
<properties>
<jackson.version>1.9.2</jackson.version>
<jackson.version>2.6.1</jackson.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
@@ -48,15 +48,18 @@
<artifactId>json-lib</artifactId>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
@@ -21,11 +21,11 @@
package org.apache.struts2.rest.handler;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectReader;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.opensymphony.xwork2.inject.Inject;
import org.apache.struts2.StrutsConstants;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.map.ObjectReader;
import org.codehaus.jackson.map.SerializationConfig.Feature;
import java.io.IOException;
import java.io.Reader;
@@ -41,14 +41,13 @@ public class JacksonLibHandler implements ContentTypeHandler {
private ObjectMapper mapper = new ObjectMapper();
public void toObject(Reader in, Object target) throws IOException {
mapper.configure(Feature.WRITE_NULL_MAP_VALUES, false);
mapper.configure(SerializationFeature.WRITE_NULL_MAP_VALUES, false);
ObjectReader or = mapper.readerForUpdating(target);
or.readValue(in); //, new TypeReference<clazz>);
or.readValue(in);
}
public String fromObject(Object obj, String resultCode, Writer stream) throws IOException {
mapper.configure(Feature.WRITE_NULL_MAP_VALUES, false);
mapper.configure(SerializationFeature.WRITE_NULL_MAP_VALUES, false);
mapper.writeValue(stream, obj);
return null;
}