You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2010/12/30 17:59:36 UTC

svn commit: r1053939 - in /tuscany/sca-java-2.x/trunk/modules/databinding-json: META-INF/ src/main/java/org/apache/tuscany/sca/databinding/json/ src/main/java/org/apache/tuscany/sca/databinding/json/jackson/ src/test/java/org/apache/tuscany/sca/databin...

Author: rfeng
Date: Thu Dec 30 16:59:35 2010
New Revision: 1053939

URL: http://svn.apache.org/viewvc?rev=1053939&view=rev
Log:
Change json serialization to not marshal null values

Modified:
    tuscany/sca-java-2.x/trunk/modules/databinding-json/META-INF/MANIFEST.MF
    tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JSON2JavaBean.java
    tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSON.java
    tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/JacksonHelper.java
    tuscany/sca-java-2.x/trunk/modules/databinding-json/src/test/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSONTestCase.java

Modified: tuscany/sca-java-2.x/trunk/modules/databinding-json/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/databinding-json/META-INF/MANIFEST.MF?rev=1053939&r1=1053938&r2=1053939&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/databinding-json/META-INF/MANIFEST.MF (original)
+++ tuscany/sca-java-2.x/trunk/modules/databinding-json/META-INF/MANIFEST.MF Thu Dec 30 16:59:35 2010
@@ -21,6 +21,7 @@ Import-Package: javax.xml.namespace,
  org.apache.tuscany.sca.interfacedef.util;version="2.0.0",
  org.codehaus.jackson,
  org.codehaus.jackson.map,
+ org.codehaus.jackson.map.annotate,
  org.codehaus.jackson.map.deser,
  org.codehaus.jackson.map.introspect,
  org.codehaus.jackson.map.ser,

Modified: tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JSON2JavaBean.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JSON2JavaBean.java?rev=1053939&r1=1053938&r2=1053939&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JSON2JavaBean.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JSON2JavaBean.java Thu Dec 30 16:59:35 2010
@@ -41,7 +41,7 @@ public class JSON2JavaBean implements Pu
             throw new TransformationException(e);
         }
         serializer.setMarshallClassHints(true);
-        serializer.setMarshallNullAttributes(true);
+        serializer.setMarshallNullAttributes(false);
     }
 
     public Object transform(Object source, TransformationContext context) {

Modified: tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSON.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSON.java?rev=1053939&r1=1053938&r2=1053939&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSON.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSON.java Thu Dec 30 16:59:35 2010
@@ -19,10 +19,10 @@
 
 package org.apache.tuscany.sca.databinding.json;
 
+import org.apache.tuscany.sca.databinding.BaseTransformer;
 import org.apache.tuscany.sca.databinding.PullTransformer;
 import org.apache.tuscany.sca.databinding.TransformationContext;
 import org.apache.tuscany.sca.databinding.TransformationException;
-import org.apache.tuscany.sca.databinding.BaseTransformer;
 import org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding;
 import org.jabsorb.JSONSerializer;
 import org.jabsorb.serializer.SerializerState;
@@ -38,7 +38,7 @@ public class JavaBean2JSON extends BaseT
             throw new TransformationException(e);
         }
         serializer.setMarshallClassHints(true);
-        serializer.setMarshallNullAttributes(true);
+        serializer.setMarshallNullAttributes(false);
     }
 
     @Override

Modified: tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/JacksonHelper.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/JacksonHelper.java?rev=1053939&r1=1053938&r2=1053939&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/JacksonHelper.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/JacksonHelper.java Thu Dec 30 16:59:35 2010
@@ -38,6 +38,7 @@ import org.codehaus.jackson.map.Annotati
 import org.codehaus.jackson.map.DeserializationConfig;
 import org.codehaus.jackson.map.MappingJsonFactory;
 import org.codehaus.jackson.map.ObjectMapper;
+import org.codehaus.jackson.map.annotate.JsonSerialize;
 import org.codehaus.jackson.map.deser.CustomDeserializerFactory;
 import org.codehaus.jackson.map.deser.StdDeserializerProvider;
 import org.codehaus.jackson.map.introspect.JacksonAnnotationIntrospector;
@@ -100,6 +101,7 @@ public class JacksonHelper {
         // [rfeng] To avoid complaints about javaClass
         mapper.getDeserializationConfig().set(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, Boolean.FALSE);
         mapper.getSerializationConfig().setAnnotationIntrospector(pair);
+        mapper.getSerializationConfig().setSerializationInclusion(JsonSerialize.Inclusion.NON_NULL);
         return mapper;
     }
 

Modified: tuscany/sca-java-2.x/trunk/modules/databinding-json/src/test/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSONTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/databinding-json/src/test/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSONTestCase.java?rev=1053939&r1=1053938&r2=1053939&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/databinding-json/src/test/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSONTestCase.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/databinding-json/src/test/java/org/apache/tuscany/sca/databinding/json/JavaBean2JSONTestCase.java Thu Dec 30 16:59:35 2010
@@ -42,6 +42,7 @@ public class JavaBean2JSONTestCase {
         private String friends[];
         private List<String> books;
         private YourBean you;
+        private String note;
 
         public String getName() {
             return name;
@@ -91,6 +92,14 @@ public class JavaBean2JSONTestCase {
             this.you = you;
         }
 
+        public String getNote() {
+            return note;
+        }
+
+        public void setNote(String note) {
+            this.note = note;
+        }
+
     }
 
     public static class YourBean {