Wenn ich einen relativen Pfad zu einem statischen Asset habe (flash/blah.swf), was ist der beste Weg dies programmatisch in eine absolute URL zu konvertieren (http://localhost/app/flash/blah.swf)? Oder wie erhält man am besten die Basis-URL der Wicket-Anwendung? Ich habe versucht, RequestUtils.toAbsolutePath zu verwenden, aber es scheint nicht zuverlässig zu funktionieren und wirft häufig Ausnahmen. Dies muss auf allen Servern funktionieren, auf denen die App bereitgestellt wird.Wicket: Relativ zu absoluter URL oder get base URL
Antwort
RequestUtils.toAbsolutePath(RequestCycle.get().getRequest().
getRelativePathPrefixToWicketHandler());
für mich gearbeitet.
org.apache.wicket.protocol.http.servlet.ServletWebRequest
hat eine Methode getRelativePathPrefixToContextRoot()
(eigentlich als abstrakt in einer Oberklasse definiert).
Ein Standard-Idiom dafür verwendet, ist
RequestCycle.get().getRequest().getRelativePathPrefixToContextRoot() + location;
ich so etwas wie dies am Ende mit nach einer base_url
Eigenschaft meiner MyApplication
Klasse hinzufügen, die die Wicket Anwendung erstreckt.
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));
Für Wicket 1.5 gibt Informationen here
Für Wicket 6 es
String absoluteUrl = RequestCycle.get().getUrlRenderer().renderFullUrl(Url.parse("my-relative-url.html"));
das funktioniert für Wicket 1.5 zu – 1ac0
Und die Basis-URL ist 'String baseUrl = RequestCycle.get(). GetUrlRenderer(). GetBaseUrl(). ToString()' –
- 1. Wicket Dynamic Image URL
- 2. Herstellung CSS url() relativ
- 3. Asp.Net Absoluter Pfad einer URL
- 4. URL relativ zum Server
- 5. Absoluter Dateipfad zur relativen URL
- 6. URL zu einer bestimmten Wicket-Komponente
- 7. Wicket: URL vom Browser abrufen
- 8. MVC Url relativ zu Variable ActionResult
- 9. Maven SCM URL relativ zum Vater
- 10. Python relativ/absoluter Import (wieder)
- 11. Ermitteln, ob eine Url absolut oder relativ von vb ist
- 12. javascript: get URL-Pfad
- 13. C# Get Anwendung URL
- 14. Get Soundcloud vollständige URL via API url
- 15. Get Thumbnail URL von Bild-URL
- 16. Pylonen/Routen POST oder GET umschreiben zu extravagant URL
- 17. URL GET-Methode innerhalb anderer URL GET-Methode
- 18. Get base uri von io.netty.handler.codec.http.HttpRequest
- 19. Get URL Parameter
- 20. Get Cloudinary Bild-URL
- 21. get real g.co url
- 22. Get chunked-codierte URL
- 23. Get Dokument url
- 24. Verwendung von .htaccess zu reinigen GET URL
- 25. PHP/YQL/GET: URL zu lang
- 26. jquery get Abfragezeichenfolgeflag von URL
- 27. Get URL-Parameter mit jquery
- 28. Hide a get php url
- 29. PHP Get URL mit Parameter
- 30. Get URL-Parameter in NancyFx
Hinweis ist, dass dies nicht in Wicket 1.5 funktioniert, die keine einzige arg hat 'toAbsolutePath' –