作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在从枚举类值填充下拉列表时遇到问题。我的枚举类代码是:
package abc.xyz.constants;
public enum StateConstantsEnum
{
NEWYORK("NY"),
FLORIDA("FL"),
CALIFORNIA("CA"),
private String fullState;
private StateConstantsEnum( String s )
{
fullState = s;
}
public String getState()
{
return fullState;
}
}
我想用纽约、佛罗里达和加利福尼亚填充下拉列表。我正在创建列表并将其添加到 Spring 模型中:
List<StateConstantsEnum> stateList = new ArrayList<StateConstantsEnum>( Arrays.asList(StateConstantsEnum.values() ));
model.addAttribute("stateList", stateList);
然后我尝试使用以下方法在 JSP 中填充下拉列表:
<select name="${status.expression}" name="stateLst" id="stateLst">
<option value=""></option>
<c:forEach items="${stateList}" var="option">
<option value="${option}">
<c:out value="${option.fullState}"></c:out>
</option>
</c:forEach>
</select>
但我得到一个异常“异常创建:javax.el.PropertyNotFoundException:“abc.xyz.constants.StateConstantsEnum”类没有“fullState”属性。”
如何解决这个问题?非常感谢帮助
最佳答案
fullState
是私有(private)的,getState()
是访问器。
<c:out value="${option.state}"></c:out>
或者将您的 getter 重命名为 getFullstate()
。
关于java - 枚举值作为下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7591776/
我是一名优秀的程序员,十分优秀!