我在“mypackage”內的“myclass”類中有這個枚舉。public enum InputError {TIME_PERIOD_GIVEN;}據推測,Thymeleaf 模板應該引用它并將其比較為:<th:block th:if="${somevar == T(mypackage.myclass.InputError).TIME_PERIOD_GIVEN}"它不是。它在調試中顯示錯誤:Caused by: ognl.NoSuchPropertyException: mypackage.myclass.InputError知道什么是錯的嗎?
2 回答

吃雞游戲
TA貢獻1829條經驗 獲得超7個贊
我會使用 String 而不是 Java Enum,因為依賴 a 包是丑陋的。它很容易出錯,尤其是當您將枚舉類移動到另一個包中時。
<th:block th:if="${somevar == TIME_PERIOD_GIVEN}"
在 Java 中:
model.put("somevar", InputError.TIME_PERIOD_GIVEN.toString());

蝴蝶刀刀
TA貢獻1801條經驗 獲得超8個贊
這應該有效: th:if="${somevar == T(mypackage.myclass.InputError).MONDAY}"
確保輸入正確的包名。
添加回答
舉報
0/150
提交
取消