我正在创建一个对话框,然后可以在多个父屏幕上使用。 (即客户搜索)。
对于客户搜索对话框,我创建了以下对象。
我的父xhtml页面有自己的托管bean,我使用DialogHandlerCustomerSearch来传递搜索对话框的输出。
但是,我还想将输入参数传递给对话框,以便对话框可以读取值并在打开时预设一些搜索条件。
有人可以帮我吗?我知道在请求对话框时有一个params字段。
Map<String, List<String>> params = new HashMap<String, List<String>>();
List<String> values = new ArrayList<String>();
values.add("test");
params.put("bookName", values);
RequestContext.getCurrentInstance().openDialog("/ui/cor/SearchCustomerDlg", dialogConfig, params);
但是,当我尝试读取SearchCustomerMb中的param值但显示值为null时。所以我假设它没有正确传递它或者我做错了。
另外,我如何直接从PlDigitalSalesrpt.xhtml传递参数,然后调用dialogHandlerCustomerSearch ???
请帮助......我看了下面的例子但是没有用。
答案 0 :(得分:2)
SearchCustomerDlg.xhtml可能有:
<f:metadata>
<f:viewParam name="bookName" value="#{searchCustomerMb.bookName}"/>
</f:metadata>
然后在SearchCustomerMb.java中需要getBookName和setBookName