Si tengo una ruta relativa a un activo estática (flash/blah.swf), ¿cuál es la mejor manera de convertir esta programación a una URL absoluta (http://localhost/app/flash/blah.swf)? ¿O cuál es la mejor forma de obtener la URL base de la aplicación Wicket? Intenté usar RequestUtils.toAbsolutePath, pero parece que no funciona de manera confiable y con frecuencia arroja excepciones. Esto debe funcionar en todos los servidores en los que se implementa la aplicación.Wicket: En relación con la URL absoluta o conseguir URL base
Respuesta
RequestUtils.toAbsolutePath(RequestCycle.get().getRequest().
getRelativePathPrefixToWicketHandler());
trabajó para mí.
org.apache.wicket.protocol.http.servlet.ServletWebRequest
tiene un método getRelativePathPrefixToContextRoot()
(realmente definido como abstracto en una superclase).
un lenguaje estándar para usarlo es
RequestCycle.get().getRequest().getRelativePathPrefixToContextRoot() + location;
Terminé usando algo como esto después de añadir una propiedad base_url
a mi clase MyApplication
que se extiende la aplicación portillo.
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));
Por Wicket 1.5 se disponga de información here
Por Wicket 6 es
String absoluteUrl = RequestCycle.get().getUrlRenderer().renderFullUrl(Url.parse("my-relative-url.html"));
esto funciona para portillo 1.5 también – 1ac0
Y la URL base es 'String baseUrl = RequestCycle.get(). GetUrlRenderer(). GetBaseUrl(). ToString()' –
- 1. URL absoluta de la base + URL relativa en C#
- 2. obtener la URL absoluta (base) en Sinatra
- 3. Url absoluta en jsp
- 4. Html.BeginForm() con una URL absoluta?
- 5. obtener la URL absoluta con EL
- 6. Aplicar URL relativa a una URL absoluta
- 7. obteniendo la URL base de la raíz del sitio web (URL absoluta/relativa)
- 8. URL absoluta de la ruta relativa
- 9. Wicket: Obtener URL del navegador
- 10. conseguir URL actual
- 11. Spring MVC problema absoluta URL
- 12. cambiar una dirección URL relativa a la URL absoluta
- 13. ASP.NET MVC ActionLink con LinkText = URL absoluta
- 14. URL de imagen dinámica de Wicket
- 15. determinar si una cadena es URL absoluta o URL relativa en java
- 16. Asp .Net MVC RedirectToAction con la URL absoluta
- 17. Conseguir Nombre de URL en C#
- 18. Asp MVC Enlace de acción url absoluta
- 19. Ruta de archivo absoluta a URL relativa
- 20. La construcción de una URL absoluta de una dirección URL relativa en Java
- 21. ¿Cómo obtener la URL de un recurso compartido de Wicket?
- 22. pyramid: obtener la URL absoluta de la aplicación
- 23. cómo recuperar url base de la url dada usando java
- 24. ¿Cómo redirigir con "www" URL sin URL "www" o viceversa?
- 25. cómo conseguir código doctype con el URL utilizando XSL: salida
- 26. Jquery: Conseguir cierta ruta URL usando window.location
- 27. base 64 URL decodificar con Ruby/Rails?
- 28. Rieles: creación de una URL absoluta en el atributo virtual de un modelo sin url helper
- 29. ASP.NET MVC crea la URL absoluta desde el código C#
- 30. Obtener URL absoluta de la ruta relativa (método refactorizado)
Tenga en cuenta que esto no funciona en Wicket 1.5, que no tiene un solo arg 'toAbsolutePath' –