ValueChangeEvent在返回值时不触发



在我的jsf页面我有一个inputtext字段和一个隐藏字段。我有一个编辑按钮,并在单击编辑按钮一个弹出式屏幕出现,我选择一个值和选择的值返回到我的隐藏字段。

我在隐藏字段中添加了一个valueChangeListener,并在bean中添加了以下代码。

public void processChange(ValueChangeEvent event){        
    try  {           
        logger.info("event new value "+event.getNewValue().toString());
    } catch (Exception ex)  {                        
    } 

然而,每次当我使用编辑弹出窗口改变值,并返回值回我的隐藏字段,valueChangeListener是不发射我猜。

知道为什么valueChangeListener不触发吗?我的页面范围是会话,使用JSF 1.1。

这种方法背后的想法是重新查询,并基于弹出的值,我想刷新JSF页面中的数据。

您不应该首先捕获最超类的Exception,特别是没有记录任何内容。也许你的对象从event.getNewValue()是空的,然后你得到一个NullPointerException,你不会注意到这一点。

这样写:

public void processChange(ValueChangeEvent event){        
try  {           
    logger.info("event new value "+event.getNewValue().toString());
} catch (NullPointerException ex)  { 
     logger.error("object is null: "+ex.getMessage());              
} catch (Exception ex)  { 
     logger.error(ex);              
} 
http://download.oracle.com/javase/tutorial/essential/exceptions/index.html

您必须提交表单。在标签中添加onchage属性,该属性调用提交表单的javascript。在表单提交之前,value changeevent不会被调用。

相关内容

  • 没有找到相关文章

最新更新