PrimeFaces 5.0、ページのロード時に呼び出されるメソッドをバックアップonCompleteの私は、セットアップ中に何かが正しく設定されていないが、私はよく分からないことを仮定してい JSF 2.2、 Glassfishの4.1.1、PrimeFacesは
ものにご覧ください...
私はmanagedbeansを使用してJSFページを取り戻しています。私がoncompleteプロパティを使用する場合、ページのPrimeFace要素内では、それが参照するメソッドがページの読み込みで呼び出されます。私はそれが各ページの負荷のメソッドを呼び出すと私はそれがすべきだとは思わない!
私はいくつかのページとさまざまな要素でこれをテストしました。 私は最初に、すべてのファイルがアップロードされたら、oncompleteを使ってメソッドを呼び出そうとしていた<p:fileupload>
要素でこの問題に気付きました。 私はその後、<p:commandbuttons>
でこれを試して、ページがロードされるとoncompleteが呼び出されます。
結果のHTMLをチェックしました。正しくフォーマットされた<head>
タグペアがあります。
また、oncompleteプロパティの有無にかかわらず、生成されたHTMLのdiffを完成させました。
<button id="j_idt21:j_idt26"
name="j_idt21:j_idt26"
class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only"
onclick="PrimeFaces.ab({s:'j_idt21:j_idt26',onco:function(xhr,status,args){;}});
return false;"
type="submit">`
なし::付き
ここ
<button id="j_idt21:j_idt26"
name="j_idt21:j_idt26"
class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only"
onclick="PrimeFaces.ab({s:'j_idt21:j_idt26'});
return false;"
type="submit">
は、それがロードされたときonCompleteのは、任意のページのメソッドを呼び出すことを示す上記のHTMLのコードです。これは私のログインページです。
<p:commandButton validateClient="true" value="Login"
action="#{loginJSFManagedBean.validateCredentials}"
type="submit"
ajax="true"
oncomplete="#{loginJSFManagedBean.validateCredentials}">
</p:commandButton>
ログインページがvalidateCredentials方法は、ページがレンダリングを終了する前であっても、呼び出されたロードされるたびに...ここ
は、私のファイルアップロードのための私のJSFの抜粋です:
<h:form enctype="multipart/form-data">
<p:fileUpload oncomplete="#{JSFManagedBean.extract()}"
fileUploadListener="#{JSFManagedBean.handleTarFileUpload}"
mode="advanced" ></p:fileUpload>
</h:form>
ページがextract()メソッドを読み込むたびに...
ドキュメントでは、「完了」したときに「オンコンプリート」がjavaサーバーサイドメソッドを呼び出すことができると述べていますか? – Kukeltje
[onclickイベントが発生した場合のみJSFバッキングBeanメソッドを呼び出す方法](http://stackoverflow.com/questions/8705614/how-to-call-jsf-backing-bean-method-only-when-onclick -event-occurs) – Kukeltje
ボタンで何をしようとしているのかは、最初のactionListenerとそれに続くアクションです。ファイルアップロードの場合は、http://stackoverflow.com/questions/26696922/finish-uploading-files-and-then-execute-the-jsfaction-of-the-buttonまたはhttp://stackoverflow.com/questions/を実行できます。 20747201 /複数アップロードが完了した時点でのファイルアップロード –