2013-03-25 52 views
0

你好我已經在Java類中的兩個URL映射 一個呼籲超級鏈接等是按鍵@URLMappings註釋,操作將被用於每個映射

的超級鏈接我叫

@URLAction(mappingId="abc") 
//method.. 
private String hello(){ 
return null; 
} 

按鈕我稱之爲

@URLAction(mappingId="def") 
//method.. 
private String hi(){ 
return null; 
} 

我第一次在超級鏈接打電話問候()它工作正常 但是當我上按鈕調用喜()它的工作原理罰款o但是hello()也被稱爲

與OCPSOFT 一樣如果註解方法所屬的類使用@URLMappings註釋聲明多個URL映射,則該操作將用於每個映射。 http://ocpsoft.org/docs/prettyfaces/3.3.3/en-US/html/Configuration.html

我的問題是,我想調用一個方法對每個urlmapping id任何想法? 提前。

回答

1

如果通過點擊類似於<h:commandButton>的方式提交JSF表單,JSF將始終執行回發,這意味着請求將返回到原始頁面。這就是您的方法第二次執行的原因。如果你不想這樣做,你可以配置PrettyFaces跳過頁面操作方法調用回發:

@URLAction(mappingId="abc", onPostback=false) 
private String hello(){ 
    return null; 
}