`
小波think
  • 浏览: 5186 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

(原创)开发JSF自定义标签id,var属性的设置技巧

    博客分类:
  • JSF
阅读更多
在JSF里开发自定义标签时,ID属性值的设置跟一般的属性不一样:

if(this.id!=null){    
     component.setValueExpression("id", this.id);    
} 
 
如果这样设置运行时会报java.lang.IllegalArgumentException异常,这是因为在UIComponent类的setValueExpression方里会 检测Expression的名字是"id"或"parent"时就会抛出java.lang.IllegalArgumentException异常.

正确的方法是:

ELContext elContext = FacesContext.getCurrentInstance().getELContext();   
if(this.id!=null){   
       component.setId((String)this.id.getValue(elContext));   
}  

var属性值的设置方式

if(this.var!=null){   
       ((HtmlDataTable)component).setVar((String)this.var.getValue(elContext));   
}  
 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics