Я пытаюсь расширить функциональность веб-приложения, написанного на Jelly & Java.
Сценарий: в приложении по умолчанию есть 2 жестко заданные метки: label1 & label2
Под index.jelly у нас есть
<f:entry title="${%Label1}"
field="label1">
<f:textbox name="label1"
value="${it.label1}"
default=""/>
</f:entry>
<f:entry title="${%label2}"
field="label2">
<f:textbox name="label2"
value="${it.label2}"
default=""/>
</f:entry>
Как видите, сами метки и значения жестко закодированы.
В классе Java каждая метка имеет свою собственную назначенную переменную:
private Integer label1;
private Integer label2;
public Integer getlabel1() {
return label1;
}
@DataBoundSetter
public void setlabel1(Integer label1) {
this.label1= label1;
}
public Integer getlabel2() {
return label2;
}
@DataBoundSetter
public void setlabel2(Integer label2) {
this.label2= label2;
}
Имейте в виду, что значения сохраняются путем отражения (поле label1 из index.jelly сопоставляется с установщиком данных в файле .java).
Предположим, я хочу добавить неопределенное количество меток, как я могу их сохранить, поскольку я не могу создать сеттер для каждой из них, поскольку я не буду знать, сколько у меня есть?