Ich muss die URL von der in Firefox geöffneten aktuellen Webseite mit Wicket abrufen. Kann mir jemand sagen, wie ich das mache?Wicket: URL vom Browser abrufen
Antwort
Sie müssen die zugrunde liegenden HTTPServletRequest abfragen:
public class DummyPage extends WebPage{
private String getRequestUrl(){
// this is a wicket-specific request interface
final Request request = getRequest();
if(request instanceof WebRequest){
final WebRequest wr = (WebRequest) request;
// but this is the real thing
final HttpServletRequest hsr = wr.getHttpServletRequest();
String reqUrl = hsr.getRequestURL().toString();
final String queryString = hsr.getQueryString();
if(queryString != null){
reqUrl += "?" + queryString;
}
return reqUrl;
}
return null;
}
}
Referenz:
- (Wicket) Component.getRequest()
- (Wicket) Request
- (Wicket) WebRequest
- (Servlet API) HTTPServletRequest
Je nachdem, was genau Sie wollen, ist dies möglicherweise nicht möglich. Es gibt eine kurze Anleitung here in the Wicket wiki, aber es hat einige Vorbehalte, insbesondere, dass es nur eine relative URL in Versionen von Wicket nach 1.3 zurückgibt. Das heißt, die verwendete Methode ist
String url = urlFor("pageMapName", MyPage.class, new PageParameters("foo=bar"));
Wenn Sie mit dem Wiki Alternativmethode gehen — der man die Form beteiligt — seien Sie gewarnt: getPage()
ist not part of Wicket's public API.
Die Lösung von Sean Patrick Floyd scheint für Wicket 1.5
Bei der Verwendung von Wicket 1.5 (oder höher schätze ich) hier obsolet zu sein ist die Lösung:
RequestCycle.get().getUrlRenderer().renderFullUrl(
Url.parse(urlFor(MyPage.class,null).toString()));
Referenz:
auf die aktuelle Seite die URL verwenden, um die webrequest und UrlRenderer zu erhalten:
Url url = ((WebRequest)RequestCycle.get().getRequest()).getUrl();
String fullUrl = RequestCycle.get().getUrlRenderer().renderFullUrl(url);
Dies funktioniert. Ich benutze Wicket 1.5;
neue URL (RequestCycle.get(). GetUrlRenderer(). RenderFullUrl ( URL.parse (urlFor (HomePage.class, null) .toString()))). getAuthority();
Beispiel: http://example.com:80/a_long_path/
getAuthproty() gibt example.com:80
getHost() wird example.com zurückzukehren.
- 1. Aktuelle URL vom Browser holen
- 2. Abrufen des Spaltenwerts vom Browser
- 3. Positionsdaten vom mobilen Browser abrufen
- 4. Wicket Dynamic Image URL
- 5. Aktuelle Browser-URL abrufen - ActionScript 3
- 6. Wicket-Komponente vom Backend neu rendern
- 7. Anwendung vom Browser ausführen
- 8. URL zu einer bestimmten Wicket-Komponente
- 9. Wie bekomme ich die aktuelle URL vom Browser
- 10. AWS S3 Verhindern, dass Dateien vom Browser heruntergeladen werden URL
- 11. Wie ändert man eine geöffnete Safari Browser URL vom Terminal?
- 12. Abrufen der aktuellen URL in einem Android-Browser
- 13. Wicket: Relativ zu absoluter URL oder get base URL
- 14. Wie URL aus dem Browser mit C#
- 15. ReactJS Daten nicht vom Server abrufen, wenn 'URL' Attribut
- 16. Aktuelle URL vom aktiven Tab Chrome Vb Net abrufen?
- 17. Browserfensterposition unabhängig vom Zoom abrufen
- 18. Silent Print vom Browser
- 19. Daten vom JSON-Array abrufen
- 20. URL im Browser web2py
- 21. Browser wird nicht vom Dienst gestartet
- 22. System-Sound vom Browser erfassen
- 23. Kill Django Prozess vom Browser
- 24. Öffnen iOS App vom Browser
- 25. PKCS # 11 Zugriff vom Browser
- 26. URL vom Controller ändern?
- 27. Ein Bild vom Browser zur Galerie öffnen
- 28. Wird GZIP automatisch vom Browser dekomprimiert?
- 29. Wicket: Umleiten zur Wicket-Seite mit setResponsePage
- 30. FreeMarker - Aktuelle URL abrufen
Gut zu wissen, danke (+1) –