Tengo una página de Java/Wicket que genera un archivo JNLP que inicia el software de mi empresa. Esta clase tomará opcionalmente algunos parámetros de URL e incrústelos como argumentos en el JNLP. Cuando el usuario inicia este archivo JNLP, la aplicación del cliente realizará alguna función basada en esos parámetros. Si el software del cliente ya se está ejecutando en la máquina, al presionar la página JNLP se intentará alimentar estos parámetros mediante una llamada remota al cliente en ejecución en lugar de abrir una página nueva.Java/Wicket: cómo evitar que los navegadores guarden en caché las páginas?
Esta parte es donde tengo problemas. En IE, Firefox y Chrome podría abrir un nuevo cliente, pero tratar de golpear la misma URL nuevamente devolvería un archivo JNLP. Descubrí que borrar el caché del navegador corrige este problema en todos los navegadores. Además, parece que no puedo acceder a los puntos de interrupción en la clase JNLP, lo que refuerza mi presentimiento de que esto es más un problema con la solicitud que algo extraño con Wicket.
puse el código siguiente en mi clase de página, que se extiende org.apache.wicket.markup.html.WebPage:
@Override
protected void setHeaders(WebResponse response) {
getPageMap().remove(this);
HttpServletResponse httpServletResponse = response.getHttpServletResponse();
if (httpServletResponse != null) {
httpServletResponse.setDateHeader("Expires", 0);
httpServletResponse.addHeader("Cache-Control", "no-cache,no-store,private,must-revalidate,max-stale=0,post-check=0,pre-check=0");
httpServletResponse.addHeader("Keep-Alive", "timeout=3, max=993");
}
}
Esto no parece funcionar, como Firefox 3.6 sigue pareciendo para almacenar el resultado en caché IE 7 funcionará pero solo después de probar el enlace creo unas cuantas veces. No sé mucho sobre desarrollo web y Wicket y esto es nuevo para mí, así que es posible que me esté perdiendo algo simple.
TL; DR: ¿Cómo obtengo una página Wicket para no almacenar en caché en el navegador del cliente?
intenté agregar '
' al marcado de la página? – Gytis