Author: gk
Date: Tue Mar 16 16:37:37 2021
New Revision: 1887732

URL: http://svn.apache.org/viewvc?rev=1887732&view=rev
Log:
- Update Jackson2  to 2.12.2
- Security Update Jackson version 2.10.5.1 (CVE-2020-25649)
- Fix not supported and unresolved issue in test
- remove jackson module from module build (it's not supported any more with 
java 8 and parent module dependencies)

Modified:
    turbine/fulcrum/trunk/json/jackson/pom.xml
    
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
    
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/JacksonMapperTest.java
    turbine/fulcrum/trunk/json/jackson2/pom.xml
    
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
    
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/mixins/TypedRectangle.java
    turbine/fulcrum/trunk/json/pom.xml

Modified: turbine/fulcrum/trunk/json/jackson/pom.xml
URL: 
http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson/pom.xml?rev=1887732&r1=1887731&r2=1887732&view=diff
==============================================================================
--- turbine/fulcrum/trunk/json/jackson/pom.xml (original)
+++ turbine/fulcrum/trunk/json/jackson/pom.xml Tue Mar 16 16:37:37 2021
@@ -58,11 +58,11 @@
     </build>
 
     <dependencies>
-               <dependency>
-                   <groupId>org.apache.commons</groupId>
-                   <artifactId>commons-lang3</artifactId>
-                   <version>3.9</version>
-               </dependency>
+        <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
+            <version>3.9</version>
+        </dependency>
         <dependency>
             <groupId>org.apache.avalon.framework</groupId>
             <artifactId>avalon-framework-api</artifactId>
@@ -89,6 +89,13 @@
           <artifactId>jackson-xc</artifactId>
            <version>${jackson.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-nop</artifactId>
+            <version>1.7.25</version>
+            <optional>true</optional>
+            <scope>test</scope>
+        </dependency>
     </dependencies>
     <properties>
         <!-- 1.9.13, released 14-Jul-2013: latest version see 
https://github.com/FasterXML/jackson -->

Modified: 
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
URL: 
http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java?rev=1887732&r1=1887731&r2=1887732&view=diff
==============================================================================
--- 
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
 (original)
+++ 
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
 Tue Mar 16 16:37:37 2021
@@ -7,6 +7,8 @@ import org.apache.fulcrum.json.TestClass
 import org.apache.fulcrum.testcontainer.BaseUnit5Test;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
+import org.junit.platform.runner.JUnitPlatform;
+import org.junit.runner.RunWith;
 
 
 /**
@@ -15,6 +17,7 @@ import org.junit.jupiter.api.Test;
  * @author gk
  * @version $Id$
  */
+@RunWith(JUnitPlatform.class)
 public class DefaultServiceTest extends BaseUnit5Test {
     private JsonService sc = null;
     private final String preDefinedOutput = 

Modified: 
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/JacksonMapperTest.java
URL: 
http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/JacksonMapperTest.java?rev=1887732&r1=1887731&r2=1887732&view=diff
==============================================================================
--- 
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/JacksonMapperTest.java
 (original)
+++ 
turbine/fulcrum/trunk/json/jackson/src/test/org/apache/fulcrum/json/jackson/JacksonMapperTest.java
 Tue Mar 16 16:37:37 2021
@@ -40,6 +40,8 @@ import org.codehaus.jackson.annotate.Jso
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
+import org.junit.platform.runner.JUnitPlatform;
+import org.junit.runner.RunWith;
 
 /**
  * Jackson1 JSON Test
@@ -47,6 +49,7 @@ import org.junit.jupiter.api.Test;
  * @author gk
  * @version $Id$
  */
+@RunWith(JUnitPlatform.class)
 public class JacksonMapperTest extends BaseUnit5Test {
     private JsonService sc = null;
     private final String preDefinedOutput = 
"{\"container\":{\"cf\":\"Config.xml\"},\"configurationName\":\"Config.xml\",\"name\":\"mytest\"}";

Modified: turbine/fulcrum/trunk/json/jackson2/pom.xml
URL: 
http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson2/pom.xml?rev=1887732&r1=1887731&r2=1887732&view=diff
==============================================================================
--- turbine/fulcrum/trunk/json/jackson2/pom.xml (original)
+++ turbine/fulcrum/trunk/json/jackson2/pom.xml Tue Mar 16 16:37:37 2021
@@ -58,11 +58,11 @@
     </build>
 
     <dependencies>
-               <dependency>
-                   <groupId>org.apache.commons</groupId>
-                   <artifactId>commons-lang3</artifactId>
-                   <version>3.9</version>
-               </dependency>
+        <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
+            <version>3.9</version>
+        </dependency>
         <dependency>
             <groupId>org.apache.avalon.framework</groupId>
             <artifactId>avalon-framework-api</artifactId>
@@ -138,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.10.3</jackson2.version>
+        <jackson2.version>2.12.2</jackson2.version>
     </properties>
     <profiles>
       <profile>

Modified: 
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
URL: 
http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java?rev=1887732&r1=1887731&r2=1887732&view=diff
==============================================================================
--- 
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
 (original)
+++ 
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/DefaultServiceTest.java
 Tue Mar 16 16:37:37 2021
@@ -124,7 +124,7 @@ public class DefaultServiceTest extends
                ObjectMapper objectMapper = new ObjectMapper(new 
MappingJsonFactory(((Jackson2MapperService) sc).getMapper()));
                // use other configuration
                if (withType)
-                       
objectMapper.enableDefaultTypingAsProperty(DefaultTyping.NON_FINAL, "type");
+                       
objectMapper.activateDefaultTypingAsProperty(objectMapper.getPolymorphicTypeValidator(),
 DefaultTyping.NON_FINAL, "type");
                AnnotationIntrospector ai = 
objectMapper.getSerializationConfig().getAnnotationIntrospector();
                // AnnotationIntrospector is by default 
JacksonAnnotationIntrospector
                assertTrue(ai != null && ai instanceof 
JacksonAnnotationIntrospector, "Expected Default 
JacksonAnnotationIntrospector");
@@ -265,7 +265,6 @@ public class DefaultServiceTest extends
         */
        @Test
        public void testSerializeExcludeField() throws Exception {
-
                String serJson = sc.serializeAllExceptFilter(new 
TestClass("mytest"), "configurationName");
                
assertEquals("{\"container\":{\"cf\":\"Config.xml\"},\"name\":\"mytest\"}", 
serJson, "Serialization failed ");
                sc.addAdapter("Mixin Adapter", TestClass.class, 
TextClassMixin.class);
@@ -617,6 +616,7 @@ public class DefaultServiceTest extends
 
     /**
      * @throws Exception generic exception
+     * 
      */
     @Test
     public void testSerializeCollectionWithOnlyFilterAndType() throws 
Exception {
@@ -627,7 +627,7 @@ public class DefaultServiceTest extends
             rectList.add(filteredRect);
         }
         Class<?> clazz = 
Class.forName("org.apache.fulcrum.json.jackson.mixins.TypedRectangle");
-        // no type cft. 
https://github.com/FasterXML/jackson-databind/issues/303 !!
+        // 
         String jsonResult = sc.serializeOnlyFilter(rectList, clazz, true, "w");
         assertEquals("[{\"w\":0},{\"w\":1}]", jsonResult);
         // could not deserialize easily with missing property type
@@ -635,8 +635,14 @@ public class DefaultServiceTest extends
 
     /**
      * @throws Exception generic exception
+     * 
+     * This test was a workaround for no type cft. 
https://github.com/FasterXML/jackson-databind/issues/303
+     * 
+     * and is not supported in v > 10.2 (assign a type to Object). Use e.g. 
type references
+     * 
+     * {@link #testSerializeCollectionWithTypedReference(TestReporter)} or 
write a custom serializer 
      */
-    @Test
+    @Deprecated
     public void testSerializeCollectionWithOnlyFilterAndMixin() throws 
Exception {
 
         List<TypedRectangle> rectList = new ArrayList<TypedRectangle>();
@@ -645,10 +651,12 @@ public class DefaultServiceTest extends
             rectList.add(filteredRect);
         }
         Class<?> clazz = 
Class.forName("org.apache.fulcrum.json.jackson.mixins.TypedRectangle");
-        sc.addAdapter("Collection Adapter", Object.class, 
TypedRectangle.Mixins.class);
+        sc.addAdapter("Collection Adapter", Object.class, 
TypedRectangle.class);
+        System.out.println( "********++********** sc" + sc );
+        String result = sc.serializeOnlyFilter(rectList, clazz, true, "w");
         assertEquals(
                 
"[\"java.util.ArrayList\",[{\"type\":\"org.apache.fulcrum.json.jackson.mixins.TypedRectangle\",\"w\":0},{\"type\":\"org.apache.fulcrum.json.jackson.mixins.TypedRectangle\",\"w\":1}]]",
-                sc.serializeOnlyFilter(rectList, clazz, true, "w"));
+                result);
     }
 
     /**

Modified: 
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/mixins/TypedRectangle.java
URL: 
http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/mixins/TypedRectangle.java?rev=1887732&r1=1887731&r2=1887732&view=diff
==============================================================================
--- 
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/mixins/TypedRectangle.java
 (original)
+++ 
turbine/fulcrum/trunk/json/jackson2/src/test/org/apache/fulcrum/json/jackson/mixins/TypedRectangle.java
 Tue Mar 16 16:37:37 2021
@@ -27,7 +27,7 @@ import com.fasterxml.jackson.annotation.
 public final class TypedRectangle {
 
 // This is only need if no DefaultTyping is set; you have then assign this to 
object if using collections
-    @JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = 
JsonTypeInfo.As.PROPERTY, property = "type")
+    @JsonTypeInfo(use = Id.CLASS, include = JsonTypeInfo.As.PROPERTY, property 
= "type")
     public static class Mixins {    }
     
     private int w, h;

Modified: turbine/fulcrum/trunk/json/pom.xml
URL: 
http://svn.apache.org/viewvc/turbine/fulcrum/trunk/json/pom.xml?rev=1887732&r1=1887731&r2=1887732&view=diff
==============================================================================
--- turbine/fulcrum/trunk/json/pom.xml (original)
+++ turbine/fulcrum/trunk/json/pom.xml Tue Mar 16 16:37:37 2021
@@ -21,7 +21,7 @@
    <parent>
        <artifactId>turbine-parent</artifactId>
        <groupId>org.apache.turbine</groupId>
-       <version>7</version>
+       <version>8-SNAPSHOT</version>
        <relativePath />
    </parent>
     <modelVersion>4.0.0</modelVersion>
@@ -72,7 +72,7 @@
     <modules>
         <module>api</module>
         <module>gson</module>
-        <module>jackson</module>
+        <!--module>jackson</module-->
         <module>jackson2</module>
         <module>dist</module>
     </modules>


Reply via email to