我需要做很簡單的事情 - 將當前URL從JSF(2.0)頁面傳遞到託管bean。這需要獲取登錄表單的URL,它將在登錄後將用戶重定向回當前頁面。 (我使用GAE,如果它確實很重要的話,bean就是用戶服務的包裝)。我試過的任何顯而易見的方式都不起作用
<c:set />
- 不起作用(沒有任何錯誤或警告信息)
將當前URL作爲參數的getter不起作用。
這麼多的問題和許多食譜,但都是複雜的,不優雅。爲什麼?可能我(像其他人一樣)錯過了一個關鍵的設計原則?我會感謝任何答案 - 簡單而直接的配方或解釋爲什麼不這樣做。從JSF頁面設置bean屬性頁面
1
A
回答
1
它可以由#{request.requestURL}
(或者如果你只想要域相對路徑,使用#{request.requestURI}
)。使用f:param
來傳遞它,並使用@ManagedProperty
來處理它。
<h:commandButton action="#{bean.submit}" value="submit">
<f:param name="url" value="#{request.requestURL}" />
</h:commandButton>
與
@ManagedProperty("#{param.url}")
private String url;
注意到應該是f:param
內h:commandButton
不JSF 1.x中工作您想改用h:commandLink
。
更新按照評論:我明白了,你想「通電流的URL託管bean」。但是你實際上想「訪問託管bean中的當前URL」。
在這種情況下,要麼通過#{request.requestURL}
更換#{param.url}
:
@ManagedProperty("#{request.requestURL}")
private String url;
或者通過ExternalContext#getRequest()
從JSF罩下獲得原始HttpServletRequest
實例:
HttpServletRequest request = (HttpServletRequest) externalContext.getRequest();
String requestURL = request.getRequestURL();
相關問題
- 1. 如何在jsf頁面中設置bean屬性值?
- 2. 如何在jsf中加載頁面時設置bean屬性?
- 3. JSF頁面inputtext不會在bean中設置屬性
- 4. JSF設置歡迎頁面
- 5. JSF設置歡迎頁面
- 6. JSF,如何在不同的頁面/支持bean中設置屬性,然後導航到該頁面?
- 7. JSF - 從xhtml更新Bean變量頁面
- 8. JSF從bean返回消息給頁面
- 9. JSF從頁面
- 10. 從jsf頁面或託管bean頁面導航到上一頁面
- 11. JSF頁面沒有正確設置對象在JSF從初學者屬性
- 12. 設置Response.Redirect頁面的屬性
- 13. C++ VS2015:屬性頁面共享設置?
- 14. 從內容頁面設置主頁上的屬性值
- 15. 在JSF頁面中找不到名爲bean的頁面
- 16. 在從一個頁面導航到另一個頁面(View Scope)的情況下設置backing bean中的屬性
- 17. JSF傳遞一個bean到頁面
- 18. JSF bean不在xhtml頁面顯示值
- 19. 從內容頁面訪問主頁面和嵌套主頁面屬性頁面
- 20. Glassfish(2.1)JSF(1.2)設置404頁面
- 21. 在JSF頁面
- 22. @Inject屬性在JSF頁面上顯示爲「未知屬性」
- 23. 無法在fitnesse設置頁面中設置環境屬性
- 24. 從jsf頁面重新更新域的對象屬性
- 25. 從內容頁面設置服務器控件屬性
- 26. 從內容頁面(sitefinity 4.4)設置模板屬性
- 27. 如何從.aspx.cs頁面設置Siverlight控件的屬性?
- 28. JSF彈出頁面父(opener)頁面
- 29. 如何使用SPSS語法編輯頁面屬性和頁面設置
- 30. 如何在當前頁面的節點下設置頁面屬性值
是的,我明白它會工作,當用戶按提交按鈕。但是,我可以設置一些bean屬性,而無需與用戶交互?我需要在收到HTTP GET請求之後使用特定的requestURI初始化一個bean屬性,並能夠獲取其他屬性,這取決於頁面上的requestURI。可能嗎? – 2010-08-13 16:03:39
真的這是可能的。查看更新後的答案。 – BalusC 2010-08-13 16:22:35
是的,這是我的錯,我很抱歉含糊不清的問題。現在這兩個選項都可以正常工作!謝謝BalusC! – 2010-08-14 01:33:17