Note that the factory is constructed with the QName and xmlType. This is important
to allow distinction between primitive values and java.lang wrappers.
super(SimpleListDeserializer.class, xmlType, javaType.getComponentType());
clazzType = javaType;
Class componentType = javaType.getComponentType();
try {
if (!componentType.isPrimitive()) {
constructor =
componentType.getDeclaredConstructor(STRING_CLASS);
}
else {
Class wrapper = JavaUtils.getWrapperClass(componentType);
if (wrapper != null)
constructor =
wrapper.getDeclaredConstructor(STRING_CLASS);
}
} catch (java.lang.NoSuchMethodException e) {
throw new IllegalArgumentException(e.toString());
}