camel-core - Avoid using reflection when setting properties.
diff --git a/components/camel-cron/src/main/java/org/apache/camel/component/cron/CronComponent.java b/components/camel-cron/src/main/java/org/apache/camel/component/cron/CronComponent.java
index c48356c..ae67825 100644
--- a/components/camel-cron/src/main/java/org/apache/camel/component/cron/CronComponent.java
+++ b/components/camel-cron/src/main/java/org/apache/camel/component/cron/CronComponent.java
@@ -45,16 +45,13 @@
     public Endpoint createEndpoint(String uri, String remaining, Map<String, Object> properties) throws Exception {
         CamelCronConfiguration configuration = new CamelCronConfiguration();
         configuration.setName(remaining);
-        setProperties(configuration, properties);
-        validate(configuration);
 
         Endpoint delegate = this.service.createEndpoint(configuration);
         CronEndpoint cronEndpoint = new CronEndpoint(uri, this, delegate, configuration);
+        setProperties(cronEndpoint, properties);
 
-        if (properties.size() > 0) {
-            // Additional endpoint properties present
-            setProperties(cronEndpoint, properties);
-        }
+        // validate after options has been set
+        validate(configuration);
 
         return cronEndpoint;
     }