Так что это довольно простой вопрос, и я просто не могу понять, почему это не работает, как я ожидал.
Мой проект - конвертер единиц измерения в J2EE.Интерфейс HTML с Java позади.
У меня есть 2 раскрывающихся окна на моей html-странице.
<p:selectOneMenu id="convertFrom" value="#{conversions.convertFrom}">
<f:selectItem itemLabel="Inches" itemValue="Inches" />
<f:selectItem itemLabel="Feet" itemValue="Feet" />
<f:selectItem itemLabel="Centimeters" itemValue="Centimeters" />
<f:selectItem itemLabel="Meters" itemValue="Meters" />
</p:selectOneMenu>
<p:selectOneMenu id="convertTo" value="#{conversions.convertTo}">
<f:selectItem itemLabel="Inches" itemValue="Inches" />
<f:selectItem itemLabel="Feet" itemValue="Feet" />
<f:selectItem itemLabel="Centimeters" itemValue="Centimeters" />
<f:selectItem itemLabel="Meters" itemValue="Meters" />
</p:selectOneMenu>
Эти раскрывающиеся списки подтвердили свою работу, поскольку у меня уже есть часть преобразования.
Я пытаюсь реализовать кнопку «Переключить единицы измерения», чтобы при наличии дюйма> футов вы могли нажать кнопку и переключить ее на «Стопы»> «Дюймы».Так что convertFrom нужно поменять местами с convertTo.
public void switchUnits() {
String unitTo = getConvertTo();
String unitFrom = getConvertFrom();
setConvertTo(unitFrom);
setConvertFrom(unitTo);
}
У меня есть кнопка на html-странице, которая вызывает этот метод (я подтвердил, что он работает, с помощью hardcoding setConvertTo ("Feet") и увидел, что он работает).
Итак, устраняя неполадки, я определил, что геттер и сеттеры работают правильно.И кнопка вызывает метод правильно.
Итак, TLDR, мой вопрос: что не так с кодом в моем методе switchUnits?Как написано здесь, когда он вызывается, ничего не происходит.Оба значения остаются прежними.
Любая помощь приветствуется, спасибо.