summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/databinding-jaxb/src/main/java/org/apache/tuscany/sca/databinding/jaxb/JAXBDataBinding.java
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/trunk/modules/databinding-jaxb/src/main/java/org/apache/tuscany/sca/databinding/jaxb/JAXBDataBinding.java')
-rw-r--r--sca-java-2.x/trunk/modules/databinding-jaxb/src/main/java/org/apache/tuscany/sca/databinding/jaxb/JAXBDataBinding.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/sca-java-2.x/trunk/modules/databinding-jaxb/src/main/java/org/apache/tuscany/sca/databinding/jaxb/JAXBDataBinding.java b/sca-java-2.x/trunk/modules/databinding-jaxb/src/main/java/org/apache/tuscany/sca/databinding/jaxb/JAXBDataBinding.java
index 5d7527cfa7..4d3302cffa 100644
--- a/sca-java-2.x/trunk/modules/databinding-jaxb/src/main/java/org/apache/tuscany/sca/databinding/jaxb/JAXBDataBinding.java
+++ b/sca-java-2.x/trunk/modules/databinding-jaxb/src/main/java/org/apache/tuscany/sca/databinding/jaxb/JAXBDataBinding.java
@@ -19,6 +19,8 @@
package org.apache.tuscany.sca.databinding.jaxb;
+import static org.apache.tuscany.sca.databinding.jaxb.JAXBContextHelper.getValueType;
+
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
@@ -120,9 +122,9 @@ public class JAXBDataBinding extends BaseDataBinding {
Object value;
if (targetDataType != null && targetDataType.getPhysical() != sourceDataType.getPhysical()) {
JAXBContext targetContext = contextHelper.createJAXBContext(targetDataType);
- value = targetContext.createUnmarshaller().unmarshal(doc, targetDataType.getPhysical());
+ value = targetContext.createUnmarshaller().unmarshal(doc, getValueType(targetDataType.getPhysical()));
} else {
- value = context.createUnmarshaller().unmarshal(doc, sourceDataType.getPhysical());
+ value = context.createUnmarshaller().unmarshal(doc, getValueType(sourceDataType.getPhysical()));
}
if (isElement && value instanceof JAXBElement) {