getAllEntriesByKey вызывает ошибку: неизвестный или неподдерживаемый тип объекта в векторе - PullRequest
0 голосов
/ 19 сентября 2018

Я получаю следующую ошибку в элементе управления xp: messages:

Ошибка в lotus.domino.local.View, строка -2: NotesException: неизвестный или неподдерживаемый тип объекта в векторе

Он сгенерирован в следующем коде в моем классе Java:

View vw = db.getView(viewName);
if(null != vw){ 
ViewEntryCollection vec
-> vec = vw.getAllEntriesByKey(key);
}

ключ здесь предоставленная строка.

У кого-нибудь есть объяснение этому?

Ответы [ 3 ]

0 голосов
/ 20 сентября 2018

Вы передаете строку, а не вектор.Вам нужно создать вектор, а затем добавить в него свою строку в качестве первого элемента, как в SSJS.

Vector vec = new Vector();
vec.add(key)
vw.getAllEntriesByKey(vec);

Это одна из причин того, что сигнатура метода ODA равна getAllEntriesByKey(Object key), поэтому наша абстракцияслой делает все это для вас.Кроме того, как только вы получите результат, вы можете использовать стандартный цикл Java для обработки цикла (for (ViewEntry ent : vec) {....})

0 голосов
/ 20 сентября 2018

Вы проверяли, что ваша переменная key не равна нулю?Я получаю это сообщение об ошибке, если я предоставляю ключевой параметр, который является нулевым.

0 голосов
/ 20 сентября 2018

Есть две вещи, которые следует учитывать.Первый - это ваш синтаксис.Код должен быть следующим:

View vw = db.getView(viewName);
if(null != vw){ 
    ViewEntryCollection vec = vw.getAllEntriesByKey(key);
    // do something with the vec
}

Вторым является сообщение об исключении:

Неизвестный или неподдерживаемый тип объекта в векторе.

Документация здесь имеет подписи метода.Переменная key, которую вы упомянули, является строкой, поэтому метод должен быть тем, который вы использовали:

public ViewEntryCollection getAllEntriesByKey(Object key) throws NotesException

Когда вы удаляете -> из кода, он работает как положено?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...