2014-04-13 74 views
-1

JSF 1.2和JSF 2.x包含一些不同之處。在這兩個版本中,我有一個關於actionListener方法的問題。這裏是一個小的代碼示例:如何在JSF 1.2和JSF中使用ActionListener方法。 2.X?

JSF:

<h:commandButton value="test" actionListener="bean.actionTestMethod" /> 

的Java Bean:

public bean{ 

     public void actionTestMethod(final ActionEvent event){ 

      // do some stuff here ! 

     } 

} 

是它的權利,在JSF 2.x中的actionListenerMethod 「actionTestMethod」 呼叫沒有實現參數「final ActionEvent事件」,並且在JSF 1.2中,這個參數必須被設置並且不是可選的?

非常感謝! Maik

+0

我想*試着找出*是不可能的? –

回答

0

您是否在actionactionListener之間獲得了共享?對於actionListener,默認情況下仍然需要事件參數。對於action,您可以像以前一樣將其用作無參數方法,或者在JSF 2中傳入參數。 This question的答案有一些很好的詳細信息(包括如何調用的ActionListeners沒有或多個參數)

通常你會

<h:commandButton value="click me" action ="#{bean.method}" /> 

但是在JSF 2,你現在可以做

<h:commandButton value="click me" action ="#{bean.method('value')}" /> 
+0

好吧bitListener方法的情況如何?他們是否需要所有場景中的參數?或者該參數是強制性的? – MaikHansen

+0

堆棧溢出問題的答案告訴你,它給出了三個默認使用actionListener的例子,沒有參數,多個參數... –