How to get selected row index in JSF datatable?

前端 未结 3 1344
情歌与酒
情歌与酒 2020-12-14 23:35

I have a databale on index.xhtml



        
3条回答
  •  余生分开走
    2020-12-15 00:21

    You've already bound the component to the bean. All you need to do is:

    public void editBook() throws IOException{
        int index = datatableBooks.getRowIndex(); // Actually not interesting info.
        Book book = (Book) datatableBooks.getRowData(); // This is what you want.
    }
    

    The is also not needed here. For more hints also see this article.

    Update: I can reproduce your problem. This is likely a bug with @ViewScoped. When the bean is set to @RequestScoped, it works as expected. Also when you remove the component binding and obtain the component from the viewroot yourself, it works as expected. I've filed issue 1658 about this.

提交回复
热议问题