public Object createBean(Object srcObj, Class<?> srcObjClass, String beanId, BeanContainer beanContainer) {
        Object result;
        Class<?> destClass = MappingUtils.loadClass(beanId, beanContainer);
        Class<?>[] innerClasses = destClass.getClasses();
        Class<?> factory = null;
        for (Class<?> innerClass : innerClasses) {
            if (innerClass.getName().endsWith("Factory")) {
                factory = innerClass;
            }
        }
        if (factory == null) {
            MappingUtils.throwMappingException("Factory class of Bean of type " + beanId + " not found.");
        }
        Method newInstanceMethod = null;
        try {
            newInstanceMethod = ReflectionUtils.getMethod(factory, "newInstance", emptyArgList);
        } catch (NoSuchMethodException e) {
            MappingUtils.throwMappingException(e);
        }
        result = ReflectionUtils.invoke(newInstanceMethod, null, emptyArgList);
        return result;
    }
Creat a bean implementation of a xml bean interface.

@param srcObj      The source object
@param srcObjClass The source object class
@param beanId      the name of the destination interface class
@return A implementation of the destination interface
core/src/main/java/com/github/dozermapper/core/factory/XMLBeanFactory.java