|
Hi,
Suppose we have a Java Bean like this:
package ro.csean.andrei;
public class TestClass { private String[] test_strings; private String simple_string;
public TestClass() { }
public String[] getTest_strings() { return test_strings; }
public void setTest_strings(String[] newTest_strings) { test_strings = newTest_strings; }
public String getSimple_string() { return simple_string; }
public void setSimple_string(String newSimple_string) { simple_string = newSimple_string; } }
the SOAP message is:
Extract from BeanDeserializer::getDeserializer
LogFunction("If there is not href, then get the deserializer"); LogFunction("using the javaType and default XMLType,"); LogFunction("If there is an href, the create the generic"); LogFunction("DeserializerImpl and set its default type (the"); LogFunction("default type is used if the href'd element does"); LogFunction("not have an xsi:type."); LogFunction("if (href == null) -- href: "+href); if (href == null) { dSer = context.getDeserializer(javaType, defaultXMLType); LogFunction("dSer = context.getDeserializer(javaType, defaultXMLType);"); LogFunction("dSer: "+dSer+" context: "+context+" javaType: "+javaType+" defaultXMLType: "+defaultXMLType); }
The uotput file generated by LogFunction (function written by me) is this:
If the xmlType is not set, get a default xmlType TypeMapping tm = context.getTypeMapping(); tm: [EMAIL PROTECTED]defaultXMLType = tm.getTypeQName(javaType); defaultXMLType: {http://schemas.xmlsoap.org/soap/encoding/}Array If there is not href, then get the deserializer using the javaType and default XMLType, If there is an href, the create the generic DeserializerImpl and set its default type (the default type is used if the href'd element does not have an xsi:type. if (href == null) -- href: null dSer = context.getDeserializer(javaType, defaultXMLType); dSer: null context: [EMAIL PROTECTED] javaType: class [Ljava.lang.String; defaultXMLType: {http://schemas.xmlsoap.org/soap/encoding/}Array
So after calling getDeserializer from context with correct parameters the result is NULL. Why is that?
|