0
類
訪問我的合成成分的這樣的屬性:訪問複合組件在JSF屬性在底層的Java
enum PropertyKeys {comments, currentUserUsername}
@SuppressWarnings("unchecked")
private <T> T getAttribute(PropertyKeys propertyKey){
return (T) getStateHelper().eval(propertyKey);
}
private <T> void setAttribute(PropertyKeys propertyKey, T value){
getStateHelper().put(propertyKey, value);
}
private List<Comment> getComments() {
return getAttribute(PropertyKeys.comments);
}
private String getCurrentUserUsername() {
return getAttribute(PropertyKeys.currentUserUsername);
}
這適用於列表(評論),但不能用於字符串(CurrentUserUsername),當我通過用戶名是這樣的:
<tr:commentBox comments="#{main.comments}" currentUserUsername="Hans" [...] />
但是當我通過這種方式:
<tr:commentBox comments="#{main.comments}" currentUserUsername="#{'Hans'}" [...] />
它的工作。
我不想任何人誰將會使用我的組件都將字符串作爲EL ...
是否有解決方案,所以我可以在傳遞字符串作爲第一個片段?
你有委派'StateHelper#認沽()'屬性setter方法? – BalusC