Allow child builders that are annotated with @Builder
diff --git a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/config/ConfigurationBuilder.groovy b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/config/ConfigurationBuilder.groovy
index a2cc220..9cdd0db 100644
--- a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/config/ConfigurationBuilder.groovy
+++ b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/config/ConfigurationBuilder.groovy
@@ -2,11 +2,13 @@
 
 import groovy.transform.CompileStatic
 import groovy.transform.builder.Builder
+import groovy.transform.builder.SimpleStrategy
 import groovy.util.logging.Slf4j
 import org.grails.datastore.mapping.reflect.NameUtils
 import org.springframework.core.env.PropertyResolver
 import org.springframework.util.ReflectionUtils
 
+import java.lang.annotation.Annotation
 import java.lang.reflect.Method
 import java.lang.reflect.Modifier
 
@@ -131,6 +133,15 @@
                         continue
                     }
 
+                    Builder builderAnnotation = argType.getAnnotation(Builder)
+                    if(builderAnnotation != null && builderAnnotation.builderStrategy() == SimpleStrategy) {
+                        def newBuilder = argType.newInstance()
+                        newChildBuilder(newBuilder, propertyPath)
+                        buildRecurse(newBuilder, propertyPath)
+                        method.invoke(builder, newBuilder)
+                        continue
+                    }
+
                     def valueOfMethod = ReflectionUtils.findMethod(argType, 'valueOf')
                     if (valueOfMethod != null && Modifier.isStatic(valueOfMethod.modifiers)) {
                         try {
diff --git a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/core/exceptions/ConfigurationException.java b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/core/exceptions/ConfigurationException.java
index 6af6a5d..52f9204 100644
--- a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/core/exceptions/ConfigurationException.java
+++ b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/core/exceptions/ConfigurationException.java
@@ -3,7 +3,7 @@
 /**
  * An exception thrown if a configuration error occurs
  *
- * @aurhor Graeme Rocher
+ * @author Graeme Rocher
  * @since 6.0
  */
 public class ConfigurationException extends RuntimeException {