0

どういうわけか、Jenkins プラグイン用の jelly.xml に追加したドロップダウン メニューの値を保存できません。一方、テキストフィールドは問題なく機能します

ゼリー:

<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"));
}

また、save() の前の configure メソッドにも:

catchVersion = formData.getString("selection");

3 つのオプション間で変更でき、値が保存されていることは間違いありません。ビルドを数回実行でき、選択した値を使用していますが、プロジェクトを再度構成すると、以前に選択したものに関係なく、常に最初のオプションが選択されます。保存された値をここに表示するにはどうすればよいですか?

4

1 に答える 1

2

Option コンストラクターには、現在の選択を定義する 3 番目のパラメーターがあります。現在の値を渡すこともできます

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") ));
}

hereから適応しましたが、これはグローバル構成を使用した例です

于 2014-09-01T21:20:36.507 に答える