You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@turbine.apache.org by gk...@apache.org on 2019/12/16 15:26:36 UTC

svn commit: r1871668 - in /turbine/fulcrum/trunk/json/jackson2: pom.xml src/java/org/apache/fulcrum/json/jackson/Jackson2MapperService.java

Author: gk
Date: Mon Dec 16 15:26:35 2019
New Revision: 1871668

URL: http://svn.apache.org/viewvc?rev=1871668&view=rev
Log:
- update jackson2 version
- include jackson-datatype-json-org in current version, exclude incompatible, incldue compapatible license of org.json.

Modified:
    turbine/fulcrum/trunk/json/jackson2/pom.xml
    turbine/fulcrum/trunk/json/jackson2/src/java/org/apache/fulcrum/json/jackson/Jackson2MapperService.java

Modified: turbine/fulcrum/trunk/json/jackson2/pom.xml
URL: http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson2/pom.xml?rev=1871668&r1=1871667&r2=1871668&view=diff
==============================================================================
--- turbine/fulcrum/trunk/json/jackson2/pom.xml (original)
+++ turbine/fulcrum/trunk/json/jackson2/pom.xml Mon Dec 16 15:26:35 2019
@@ -97,10 +97,22 @@
         <dependency>
           <groupId>com.fasterxml.jackson.datatype</groupId>
           <artifactId>jackson-datatype-json-org</artifactId>
-           <!--  2.8.11 has still geronimo as dependency, only 2.9.6 updates to org.json 201718, which has still https://www.apache.org/legal/resolved.html#json.  -->
-          <!--version>${jackson2.version}</version-->
-          <version>2.8.11</version>
+          <version>${jackson2.version}</version>
           <optional>true</optional>
+         <!--  v 2.8.11 had still geronimo as dependency, since 2.9.6 update to org.json 201718, 20180813, which have still incompatible license: https://www.apache.org/legal/resolved.html#json: 
+          exclude it and include geronimo json alternatively  -->
+          <exclusions>
+                <exclusion>
+                    <groupId>org.json</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.geronimo.bundles</groupId>
+            <artifactId>json</artifactId>
+            <version>20090211_1</version>
+            <optional>true</optional>
         </dependency>
         <dependency>
             <groupId>com.jayway.jsonpath</groupId>
@@ -126,7 +138,7 @@
     <properties>
         <!-- 2.7.x hase Java 7 baseline, but is compiled with Java 6 support, cft. https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.7.
         With Jackson 2.8, Java 7 languages features will be allowed -->
-        <jackson2.version>2.9.9</jackson2.version>
+        <jackson2.version>2.10.1</jackson2.version>
     </properties>
     <profiles>
       <profile>

Modified: turbine/fulcrum/trunk/json/jackson2/src/java/org/apache/fulcrum/json/jackson/Jackson2MapperService.java
URL: http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson2/src/java/org/apache/fulcrum/json/jackson/Jackson2MapperService.java?rev=1871668&r1=1871667&r2=1871668&view=diff
==============================================================================
--- turbine/fulcrum/trunk/json/jackson2/src/java/org/apache/fulcrum/json/jackson/Jackson2MapperService.java (original)
+++ turbine/fulcrum/trunk/json/jackson2/src/java/org/apache/fulcrum/json/jackson/Jackson2MapperService.java Mon Dec 16 15:26:35 2019
@@ -182,7 +182,14 @@ public class Jackson2MapperService exten
         return reader.readValue(json);
     }
 
-    public <T> T deSer(Object src, Class<T> type) throws Exception {
+    /**
+     * basically wrapper for {@link ObjectMapper#convertValue(Object, Class)}.
+     * 
+     * @param src Object
+     * @param type target Object
+     * @return
+     */
+    public <T> T deSer(Object src, Class<T> type) {
         return mapper.convertValue(src, type);
     }
 
@@ -234,7 +241,7 @@ public class Jackson2MapperService exten
 
     public <T> Collection<T> deSerCollectionWithTypeReference(String json, TypeReference<T> collectionType)
             throws Exception {
-        return mapper.readValue(json, collectionType);
+        return (Collection<T>) mapper.readValue(json, collectionType);
     }
   
     public <T> Collection<T> deSerCollectionWithType(String json, Class<? extends Collection> collectionClass,
@@ -246,7 +253,7 @@ public class Jackson2MapperService exten
     public <T> Collection<T> deSerCollection(String json, Object collectionType, Class<T> elementType)
             throws Exception {
         if (collectionType instanceof TypeReference) {
-            return mapper.readValue(json, (TypeReference<T>) collectionType);
+            return deSerCollectionWithTypeReference(json, (TypeReference<T>) collectionType);
         } else {
             return mapper.readValue(json, mapper.getTypeFactory()
                     .constructCollectionType(((Collection<T>) collectionType).getClass(), elementType));