如果我有一個靜態資源(flash/blah.swf)的相對路徑,以編程方式將其轉換爲絕對URL(http://localhost/app/flash/blah.swf)的最佳方式是什麼?或者獲取Wicket應用程序的基本URL的最佳方式是什麼?我試過使用RequestUtils.toAbsolutePath,但它似乎並不可靠地工作,並經常拋出異常。這需要在應用程序部署到的所有服務器上運行。Wicket:相對於絕對URL或獲取基址的URL
13
A
回答
8
RequestUtils.toAbsolutePath(RequestCycle.get().getRequest().
getRelativePathPrefixToWicketHandler());
爲我工作。
0
org.apache.wicket.protocol.http.servlet.ServletWebRequest
有一個方法getRelativePathPrefixToContextRoot()
(實際上定義爲超類中的抽象)。
標準的成語使用它是
RequestCycle.get().getRequest().getRelativePathPrefixToContextRoot() + location;
0
最後我用這樣的添加base_url
屬性擴展檢票應用我MyApplication
下課。
MyApplication app = (MyApplication)getApplication();
String appBaseUrl = app.getBaseUrl();
if (StringUtils.isEmpty(appBaseUrl)) {
appBaseUrl = RequestUtils.toAbsolutePath(urlFor(app.getHomePage(), new PageParameters()).toString());
app.setBaseUrl(appBaseUrl);
}
// Add base URL to <script wicket:id="base_url"></script> to use with Flash
add(new Label("base_url", "base_url = \"" + appBaseUrl + "\";").setEscapeModelStrings(false));
1
檢票1.5有信息here
12
檢票六是
String absoluteUrl = RequestCycle.get().getUrlRenderer().renderFullUrl(Url.parse("my-relative-url.html"));
+1
這適用於檢票口1.5也是 – 1ac0 2014-01-02 15:19:32
+3
而基本URL是'String baseUrl = RequestCycle.get()。getUrlRenderer()。getBaseUrl()。toString()' – 2014-10-22 20:53:23
相關問題
- 1. 獲取網站根目錄的基址(絕對/相對url)
- 2. 將相對URL應用於絕對URL
- 3. 相對URL絕對URL
- 4. 如何從django視圖中獲取絕對url的相對url?
- 5. 如何從java中的相對url獲取絕對url
- 6. 從Firefox中的相對URL獲取絕對URL?
- 7. PHP - 絕對URL的相對URL
- 8. 確定絕對或相對URL
- 9. PHP:相對於絕對URL在curl'ed HTML
- 10. Django獲取絕對URL
- 11. URL重寫和絕對/相對URL
- 12. 轉換相對URL絕對URL
- 13. 更改相對URL絕對URL
- 14. 給絕對的url地址
- 15. Wicket tester絕對外部URL頁面
- 16. 正則表達式驗證絕對URL或相對URL
- 17. AJAX獲取url相對於腳本
- 18. 如何獲取絕對URL而不是相對的?
- 19. 在絕對和相對URL上下文中使所有URL絕對絕對
- 20. 絕對URL的行爲與相對URL的相似
- 21. 力絕對URL(忽略基本URL)中
- 22. 從相對路徑(重構方法)獲取絕對URL
- 23. 相對URL的絕對文件路徑
- 24. 絕對控制器中的相對URL
- 25. 絕對路徑的相對URL
- 26. 從相對URL獲取子目錄相對URL
- 27. 獲取java中url的絕對路徑
- 28. 獲取Azure資源的絕對URL
- 29. 獲取XMLHttpRequest請求的絕對URL?
- 30. Javascript網址驗證允許相對和絕對的URL
請注意,這並不在檢票1.5,它沒有單ARG工作'toAbsolutePath' – 2012-01-18 12:11:18