Тип возврата SQLPredicate в HazlecastMap

1

Использует ли SQLPredicate на карте ореховой лист Set (согласно документации) или arraylist? Я использую клиент и сервер v3.2.4. Клиент подключается к серверу и выполняет следующий вызов (это работает на одном сервере, но теперь, когда я использую клиент, я не уверен, что вызывает проблему).

Predicate testPredicate = equal("testGroupID", 101);  //testGroupID is attribute 
Set<testObj> testInstances = (Set<testObj>)testMap.values(testPredicate); 

Во второй строке я получаю следующее исключение:

Java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Set
Теги:
hazelcast

1 ответ

1
Лучший ответ

Вы не используете SQLPredicate а Predicates.equal. Однако это боковая точка. Главное - API:

Collection<V> values(Predicate predicate)

Итак, не упоминание values() возвращающих Set, и действительно, вы не получили Set.

Наконец, поскольку на карте можно юридически иметь повторяющиеся значения, вы, вероятно, не захотите вернуть Set.

  • 0
    спасибо Уильям - думаю, мне нужно помедленнее и обратить внимание

Ещё вопросы

Сообщество Overcoder
Наверх
Меню