Раскрывающееся меню плагина Jenkins
Почему-то я не могу сохранить значения из выпадающих меню, которые я добавил в jelly.xml для моего плагина Jenkins. С другой стороны, текстовые поля работают очень хорошо
желе:
<f:entry title="Catch+ Version" field="selection">
<f:select/>
</f:entry>
Я ничего не добавил к конструктору с привязкой к данным. Может быть, это уже проблема. Я не знал, как его добавить, так как это не строка, а список?!
Поэтому я добавил только функцию doFillSelectionItems, которая работает как надо.
public ListBoxModel doFillSelectionItems()
{
return new ListBoxModel(new Option("1.13", "1.13"),
new Option("1.14", "1.14"),
new Option("1.15", "1.15"));
}
а также к методу configure перед сохранением ():
catchVersion = formData.getString("selection");
Я могу переключаться между тремя вариантами, и значение сохраняется, без сомнения. Я могу запустить сборку несколько раз, и она использует выбранное значение, НО: если я снова собираюсь настроить проект, всегда выбирается первый вариант, независимо от того, что я выбрал ранее. Как я могу сделать, чтобы сохраненное значение появилось здесь?
1 ответ
В конструкторе Option есть третий параметр, который определяет текущий выбор. Вы также можете передать текущее значение в
public ListBoxModel doFillSelectionItems(@QueryParameter String selection) {
return new ListBoxModel(new Option("1.13", "1.13", selection.matches("1.13") ),
new Option("1.14", "1.14", selection.matches("1.14") ),
new Option("1.15", "1.15", selection.matches("1.15") ));
}
Адаптировано отсюда, но это пример использования глобальной конфигурации