new Base64DeserializerFactory(byte[].class,
Constants.SOAP_BASE64),
true, true);
myRegister(Constants.SOAP_ARRAY, java.lang.Byte[].class,
new ArraySerializerFactory(),
new ArrayDeserializerFactory(),true);
myRegister(Constants.XSD_BASE64, byte[].class,
new Base64SerializerFactory(byte[].class,
Constants.XSD_BASE64 ),
new Base64DeserializerFactory(byte[].class,
Constants.XSD_BASE64),true);
// If SOAP 1.1 over the wire, map wrapper classes to XSD primitives.
myRegister(Constants.XSD_STRING, java.lang.String.class,
null, null, true);
myRegister(Constants.XSD_BOOLEAN, java.lang.Boolean.class,
null, null, true);
myRegister(Constants.XSD_DOUBLE, java.lang.Double.class,
null, null, true);
myRegister(Constants.XSD_FLOAT, java.lang.Float.class,
null, null, true);
myRegister(Constants.XSD_INT, java.lang.Integer.class,
null, null, true);
myRegister(Constants.XSD_INTEGER, java.math.BigInteger.class,
null, null, true);
myRegister(Constants.XSD_DECIMAL, java.math.BigDecimal.class,
null, null, true);
myRegister(Constants.XSD_LONG, java.lang.Long.class,
null, null, true);
myRegister(Constants.XSD_SHORT, java.lang.Short.class,
null, null, true);
myRegister(Constants.XSD_BYTE, java.lang.Byte.class,
null, null, true);
// The XSD Primitives are mapped to java primitives.
myRegister(Constants.XSD_BOOLEAN, boolean.class,
null, null,true);
myRegister(Constants.XSD_DOUBLE, double.class,
null, null,true);
myRegister(Constants.XSD_FLOAT, float.class,
null, null,true);
myRegister(Constants.XSD_INT, int.class,
null, null,true);
myRegister(Constants.XSD_LONG, long.class,
null, null,true);
myRegister(Constants.XSD_SHORT, short.class,
null, null,true);
myRegister(Constants.XSD_BYTE, byte.class,
null, null,true);
// Map QNAME to the jax rpc QName class
myRegister(Constants.XSD_QNAME,
javax.xml.rpc.namespace.QName.class,
new BeanSerializerFactory(javax.xml.rpc.namespace.QName.class,
Constants.XSD_QNAME),
new BeanDeserializerFactory(javax.xml.rpc.namespace.QName.class,
Constants.XSD_QNAME),
true);
// The closest match for anytype is Object
myRegister(Constants.XSD_ANYTYPE, java.lang.Object.class,
null, null, false);
// The xsd primitive for date has changed through the various
// namespace versions.
// XSD_DATE is the current one, which is why it is
// registered after the other two
myRegister(Constants.XSD_DATE2, java.util.Date.class,
new DateSerializerFactory(java.util.Date.class,
Constants.XSD_DATE2),
new DateDeserializerFactory(java.util.Date.class,
Constants.XSD_DATE2),
true);
myRegister(Constants.XSD_DATE3, java.util.Date.class,
new DateSerializerFactory(java.util.Date.class,
Constants.XSD_DATE3),
new DateDeserializerFactory(java.util.Date.class,
Constants.XSD_DATE3),
true);
myRegister(Constants.XSD_DATE1, java.util.Date.class,
new DateSerializerFactory(java.util.Date.class,
Constants.XSD_DATE1),
new DateDeserializerFactory(java.util.Date.class,
Constants.XSD_DATE1),
true);
myRegister(Constants.XSD_DATE, java.util.Date.class,
new DateSerializerFactory(java.util.Date.class,
Constants.XSD_DATE),
new DateDeserializerFactory(java.util.Date.class,
Constants.XSD_DATE),
true);
// Serialize all extensions of Map to SOAP_MAP
// The SOAP_MAP will be deserialized into a HashMap by default.
myRegister(Constants.SOAP_MAP, java.util.HashMap.class,
new MapSerializerFactory(java.util.Map.class,
Constants.SOAP_MAP),
new MapDeserializerFactory(java.util.HashMap.class,
Constants.SOAP_MAP),
false);
myRegister(Constants.SOAP_MAP, java.util.Map.class,
new MapSerializerFactory(java.util.Map.class,
Constants.SOAP_MAP),
new MapDeserializerFactory(java.util.HashMap.class,
Constants.SOAP_MAP),
false);
// Use the Element Serializeration for elements
myRegister(Constants.SOAP_ELEMENT, org.w3c.dom.Element.class,
new ElementSerializerFactory(),
new ElementDeserializerFactory(), false);
myRegister(Constants.SOAP_VECTOR, java.util.Vector.class,
null,
new VectorDeserializerFactory(java.util.Vector.class,
Constants.SOAP_VECTOR),
false);
// All array objects automatically get associated with the SOAP_ARRAY.
// There is no way to do this with a hash table,
// so it is done directly in getTypeQName.
// Internally the runtime uses ArrayList objects to hold arrays...
// which is the reason that ArrayList is associated with SOAP_ARRAY.
// In addition, handle all objects that implement the List interface
// as a SOAP_ARRAY
myRegister(Constants.SOAP_ARRAY, java.util.List.class,
new ArraySerializerFactory(),
new ArrayDeserializerFactory(),
false);
myRegister(Constants.SOAP_ARRAY, java.util.ArrayList.class,
new ArraySerializerFactory(),
new ArrayDeserializerFactory(),
false);
myRegister(Constants.SOAP_ARRAY, Object[].class,
new ArraySerializerFactory(),
new ArrayDeserializerFactory(),
false);
}