diff --git a/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java b/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java index 3c5c26e..1832836 100644 --- a/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java +++ b/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java @@ -15,10 +15,13 @@ */ package org.synyx.hera.core.support; -import java.awt.List; +import java.util.Collections; +import java.util.Comparator; +import java.util.List; import org.springframework.beans.factory.FactoryBean; import org.springframework.context.ApplicationContext; +import org.springframework.core.annotation.AnnotationAwareOrderComparator; /** @@ -30,6 +33,10 @@ import org.springframework.context.ApplicationContext; public class BeanListFactoryBean extends AbstractTypeAwareSupport implements FactoryBean { + private static final Comparator COMPARATOR = + new AnnotationAwareOrderComparator(); + + /* * (non-Javadoc) * @@ -37,6 +44,9 @@ public class BeanListFactoryBean extends AbstractTypeAwareSupport */ public Object getObject() throws Exception { + List beans = getBeans(); + Collections.sort(beans, COMPARATOR); + return getBeans(); }