Как сохранить мою коллекцию в отсортированном порядке, когда она отправлена ​​как ArrayCollection и получена как java.util.Set на сервере? - PullRequest
0 голосов
/ 06 октября 2011

Я разработал веб-приложение с использованием Flex 4.5, Java, BlazeDS и Spring.

Я только что обнаружил, что когда я получаю коллекцию (java.util.Set) с сервера в виде ArrayCollection, сортировкаArrayCollection в веб-приложении Flex и отправьте его обратно на сервер, эта коллекция будет получена сервером как несортированный java.util.Set.

Любое предложение о том, как сохранить коллекцию отсортированной при отправке всервер

Ответы [ 3 ]

1 голос
/ 07 октября 2011

Вам нужно будет использовать объект на стороне AS и карту на стороне Java.В AS поместите все элементы из вашей коллекции массивов в один объект, подобный этому

            var list:ArrayCollection = new ArrayCollection();
            var obj:Object = new Object();
            list.addItem("test");
            list.addItem("test2");
            for(var i=0;i<list.length;i++){
                obj[i] = list.getItemAt(i);
            }

. После этого отправьте объект в сторону Java - объект AS будет сериализован в карту Java.На стороне сервера у вас будут позиции в качестве ключей от вашей карты, так что вы сможете перестроить порядок (код Java тривиален, поэтому я не буду его здесь записывать).

0 голосов
/ 06 октября 2011

Почему его нужно сортировать в пути? Я бы просто отсортировал, когда сервер получит это.

0 голосов
/ 06 октября 2011

Вы можете использовать SortedSet.

-> http://download.oracle.com/javase/6/docs/api/java/util/SortedSet.html

...