diff --git a/src/main/java/com/commafeed/frontend/rest/resources/CategoryREST.java b/src/main/java/com/commafeed/frontend/rest/resources/CategoryREST.java index 982180fc..625d0c3a 100644 --- a/src/main/java/com/commafeed/frontend/rest/resources/CategoryREST.java +++ b/src/main/java/com/commafeed/frontend/rest/resources/CategoryREST.java @@ -270,6 +270,13 @@ public class CategoryREST extends AbstractResourceREST { if (req.getPosition() != null) { List categories = feedCategoryDAO.findByParent( getUser(), parent); + Collections.sort(categories, new Comparator() { + @Override + public int compare(FeedCategory o1, FeedCategory o2) { + return ObjectUtils.compare(o1.getPosition(), o2.getPosition()); + } + }); + int existingIndex = -1; for (int i = 0; i < categories.size(); i++) { if (ObjectUtils.equals(categories.get(i).getId(), diff --git a/src/main/java/com/commafeed/frontend/rest/resources/FeedREST.java b/src/main/java/com/commafeed/frontend/rest/resources/FeedREST.java index d7035b2f..68f7ef06 100644 --- a/src/main/java/com/commafeed/frontend/rest/resources/FeedREST.java +++ b/src/main/java/com/commafeed/frontend/rest/resources/FeedREST.java @@ -3,6 +3,8 @@ package com.commafeed.frontend.rest.resources; import java.io.StringWriter; import java.net.URI; import java.util.Calendar; +import java.util.Collections; +import java.util.Comparator; import java.util.Date; import java.util.List; @@ -332,6 +334,13 @@ public class FeedREST extends AbstractResourceREST { if (req.getPosition() != null) { List subs = feedSubscriptionDAO.findByCategory( getUser(), parent); + Collections.sort(subs, new Comparator() { + @Override + public int compare(FeedSubscription o1, FeedSubscription o2) { + return ObjectUtils.compare(o1.getPosition(), o2.getPosition()); + } + }); + int existingIndex = -1; for (int i = 0; i < subs.size(); i++) { if (ObjectUtils.equals(subs.get(i).getId(),