Я работаю над плагином ICN, и у меня возникли проблемы с исправлением этого сбоя, каждый результат загружается так, как он должен, в виджете сетки, но как только я вношу в него какие-либо изменения на правой панели и сохраняю их, сетка кажется перезагрузите эту строку, но она станет пустой, поскольку она не загружает атрибуты, привязанные к столбцам, которые я указал в коде Java для построения сетки.
В качестве примера я использую демонстрационный плагин «Глава 6 Создание функции с поисковыми службами и виджетами» из Redbook от IBM, но где именно в этом виде плагина я могу заставить навигатор загружать эти настраиваемые столбцы и их атрибуты, которые я хочу перезагрузить после редактирования?
ПРИМЕЧАНИЕ. Под столбцами по умолчанию я подразумеваю эти атрибуты, которые каждая строка всегда будет иметь по умолчанию:
row.addAttribute("ID", doc.get_Id().toString(), JSONResultSetRow.TYPE_STRING, null, doc.get_Id().toString());
row.addAttribute("className", doc.getClassName(), JSONResultSetRow.TYPE_STRING, null, doc.getClassName());
row.addAttribute("ModifiedBy", doc.get_LastModifier(), JSONResultSetRow.TYPE_STRING, null, doc.get_LastModifier());
row.addAttribute("LastModified", doc.get_DateLastModified().toString(), JSONResultSetRow.TYPE_TIMESTAMP, null, doc.get_DateLastModified().toString());
row.addAttribute("Version", doc.get_MajorVersionNumber() + "." + doc.get_MinorVersionNumber(), JSONResultSetRow.TYPE_STRING, null, doc.get_MajorVersionNumber() + "." + doc.get_MinorVersionNumber());
row.addAttribute("{NAME}", doc.get_Name(), JSONResultSetRow.TYPE_STRING, null, doc.get_Name());
row.addAttribute("ContentSize", doc.get_ContentSize(), JSONResultSetRow.TYPE_INTEGER, null, null);
И под кастомом я подразумеваю что-то вроде этого, где все загружается из XML-файла:
ArrayList<PluginProperty> pr = pxs.getResults(contextId);
for (int i = 0; i < pr.size(); i++) {
String id = "{" + i + "}";
String propName = pr.get(i).getName();
String propType = pr.get(i).getType();
String prop = "";
.
.
.
else if (propType.equalsIgnoreCase("StringList")) {
int size = doc.getProperties().get(propName).getStringListValue().size();
for (int j = 0; j < size; j++) {
prop += doc.getProperties().get(propName).getStringListValue().get(j).toString() + "; ";
}
}
else if (propType.equalsIgnoreCase("StringValue")) {
prop = doc.getProperties().get(propName).getStringValue();
}
.
.
.
row.addAttribute(id, prop, JSONResultSetRow.TYPE_STRING, null, prop);
}