summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/Object2JSON.java
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/Object2JSON.java')
-rw-r--r--sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/Object2JSON.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/Object2JSON.java b/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/Object2JSON.java
index 2b77054934..fc0753e3d3 100644
--- a/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/Object2JSON.java
+++ b/sca-java-2.x/trunk/modules/databinding-json/src/main/java/org/apache/tuscany/sca/databinding/json/jackson/Object2JSON.java
@@ -30,6 +30,7 @@ import org.apache.tuscany.sca.databinding.json.JSONHelper;
import org.codehaus.jackson.JsonNode;
import org.codehaus.jackson.JsonParser;
import org.codehaus.jackson.map.ObjectMapper;
+import org.codehaus.jackson.map.ser.FilterProvider;
/**
* @version $Rev$ $Date$
@@ -57,7 +58,13 @@ public class Object2JSON implements PullTransformer<Object, Object> {
return source;
}
ObjectMapper mapper = JacksonHelper.createObjectMapper(targetType);
- String value = mapper.writeValueAsString(source);
+ String value = null;
+ FilterProvider filterProvider = JacksonHelper.configureFilterProvider(context);
+ if (filterProvider != null) {
+ value = mapper.writer(filterProvider).writeValueAsString(source);
+ } else {
+ value = mapper.writeValueAsString(source);
+ }
if (JsonNode.class.isAssignableFrom(targetType)) {
return JacksonHelper.createJsonParser(value).readValueAsTree();
} else if (targetType == String.class || targetType == Object.class || targetType.isPrimitive()) {