我在JSF中遇到了一個問題。有什麼方法可以根據URL調用backing bean的方法嗎?在使用Struts時,我可以通過structs-config
和action class來實現。當我從Struts遷移到JSF時,我正面臨着這個問題。基於URL調用backing bean方法
回答
您可以使用PrettyFaces,它極大地改進了JSF導航。使您能夠使用可理解的,可收藏的REST URL。
我你使用的Servlet 3.0,那麼你只需要PrettyFaces jar添加到您的Web應用程序, 註釋與頁面映射你的託管bean,並選擇特定的映射操作:
import com.ocpsoft.pretty.faces.annotation.URLAction;
import com.ocpsoft.pretty.faces.annotation.URLMapping;
import com.ocpsoft.pretty.faces.annotation.URLMappings;
@ManagedBean(name = "pageViewBean")
@URLMappings(mappings = {
@URLMapping(id = "myAction",
pattern = "/page/myAction", // URL mapped to jsf file
viewId = "/page.xhtml"), // jsf file
@URLMapping(id = "myAction2",
pattern = "/page/myAction2", // URL mapped to jsf file
viewId = "/page.xhtml")}) // jsf file
public class PageViewBean
{
@URLAction(mappingId = "myAction") // action for URL /page/myAction
public void myAction()
{
...
}
@URLAction(mappingId = "myAction2") // action for URL /page/myAction2
public void myAction2()
{
...
}
這就是所有。
感謝您的回覆。 – 2013-02-26 12:48:28
PrettyFaces是一款出色的工具,我們將它與PrimeFaces一起使用,它已經解決了許多架構問題。 – 2013-10-04 18:40:33
可以使用<f:event type="preRenderView" />
,會在每個網頁會被渲染時調用,把它放在你的<h:head>
標籤
例如上面:
<f:event listener="#{myBean.myAction}" type="preRenderView" />
<h:head>
...
</h:head>
<h:body>
...
而且在你的bean:
public void myAction(ComponentSystemEvent event){
...
}
感謝您的回覆 – 2013-02-26 14:12:45
- 1. 如何從jQuery調用backing bean方法?
- 2. outputText不調用backing bean方法
- 3. 未調用JSF Backing Bean方法
- 4. 無法執行Backing bean方法
- 5. 通過反射調用backing bean方法 - JSF
- 6. 通過XmlHttpRequest對象調用backing bean方法
- 7. jsf使backing bean方法同步
- 8. JSF/Primefaces span onClick自動調用Backing Bean
- 9. JSF如何從backing bean重定向到在backing bean中動態構造的URL?
- 10. 在jsf中完成javascript調用後如何調用listener或backing bean方法?
- 11. 將EJB3注入基於Annotation的JSF2引發javax.naming.NameNotFoundException的Backing bean:
- 12. 刷新數據並在設置時間後調用backing bean方法
- 13. 豐富的面孔4.2.3文件上傳不調用backing bean方法
- 14. 重置ViewFope的JSF Backing Bean
- 15. Request scope backing bean ... not in request
- 16. 對於列表中的每個項目,從backing bean方法中設置itemDisable
- 17. p:fileUpload響應在actionListener方法在backing bean結束之前返回
- 18. 當backing bean方法返回時如何在JSF中檢測
- 19. Backing bean方法從輸入中獲取null
- 20. 使用基於剃刀方法的URL
- 21. facelet dataTable:在backing bean中找不到方法,試圖將實例發送回bean
- 22. 從jsp調用bean方法
- 23. 未調用Bean方法
- 24. 調用企業bean方法
- 25. 方法,調用的Spring bean
- 26. 從Jquery調用Bean方法
- 27. JSTL,Bean和方法調用
- 28. p:ajax不調用bean方法
- 29. 何時在JSF中使用Serializable backing bean?
- 30. PrimeFaces在confirmDialog中的commandButton不調用backing bean
這將幫助您:http://balusc.blogspot.in/2011/09/communication-in-jsf-20.html – 757071 2013-02-26 11:50:33