2014-11-06 182 views
0

我的JSF應用程序的xhtml頁面的某些命令按鈕'actionListener事件不起作用,直到我將屬性process="@this"添加到<p:commandButton..標記爲止。我想知道爲什麼。我沒有看到這個例子。我正在使用JSF 2.2 & CDI以及JBoss 7.1運行時的Primefaces 5.0。我的豆CDI @javax.inject.Named豆類和範圍@javax.enterprise.context.RequestScoped ..爲什麼= primefaces命令按鈕需要進程=「@ this」

回答

1

你只是不就得了!

PrimeFaces commandButton的默認行爲是process="@form"因此整個表單將被處理。如果actionListener在您將行爲顯式更改爲process="form"時未得到調用,但在將其更改爲process="@this"時被調用,則通常會指示一些驗證錯誤或類似情況。

要測試這只是添加一個<p:messages autoUpdate="true">到您的頁面,你會看到所有可能發生的錯誤信息。

修復這些確認和/或驗證錯誤,並且您將看到,即使您未明確添加進程屬性,您的操作仍在被調用。

+1

這有助於推動像我這樣的純粹新手。 – user2918640 2014-11-07 09:51:11

+0

這次我嘗試了另一個沒有驗證的頁面。似乎有一個問題。請看看: http://stackoverflow.com/questions/26821562/jsf-page-why-no-validations-yet-process-attribute-required – user2918640 2014-11-08 20:11:55