private void resolveBeanRuntimeInfo(Class<?> clazz) { // If it's an array, we use a List and extract an array from it on the // visitAfter event.... if(clazz.isArray()) { this.setClassification(BeanRuntimeInfo.Classification.ARRAY_COLLECTION); this.setArrayType(clazz.getComponentType()); this.setPopulateType(ArrayList.class); } else { this.setPopulateType(clazz); this.setClassification(clazz); // check for a default constructor. // try { // clazz.getConstructor(); // } catch (NoSuchMethodException e) { // throw new SmooksConfigurationException("Invalid Smooks bean configuration. Bean class " + clazz.getName() + " doesn't have a public default constructor."); // } } }
String arrayTypeName = beanClass.substring(0, beanClass.length() - 2); try { this.setArrayType(ClassUtil.forName(arrayTypeName, getClass())); } catch (ClassNotFoundException e) { throw new SmooksConfigurationException("Invalid Smooks bean configuration. Bean class " + arrayTypeName + " not on classpath.");