1

複数の親画面で使用できるダイアログ ボックスを作成しています。(つまり、顧客検索)。

顧客検索ダイアログ ボックス用に、次のオブジェクトを作成しました。

  1. SearchCustomerDlg.xhtml
  2. SearchCustomerMb.java
  3. DialogHanglerCustomerSearch.java
  4. Oracleデータベースに移動し、ダイアログボックスに入力された基準に基づいて顧客を検索するDAOおよびサービスレイヤーオブジェクト。

独自のマネージド Bean を持つ親 xhtml ページがあり、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 として表示されます。したがって、正しく渡されていないか、何か間違っていると思います。

また、どうすれば、dialogHandlerCustomerSearch を呼び出す PlDigitalSalesrpt.xhtml からパラメータを直接渡すことができますか ???

助けてください...以下の例を見ましたが、うまくいきませんでした。

http://www.javacodegeeks.com/2015/01/primefaces-opening-external-pages-in-dynamically-generated-dialog.html

4

1 に答える 1

2

SearchCustomerDlg.xhtml には次のものがあります。

<f:metadata>
    <f:viewParam name="bookName" value="#{searchCustomerMb.bookName}"/>
</f:metadata>

次に SearchCustomerMb.java で getBookName と setBookName が必要です

于 2015-07-30T12:58:23.163 に答える