Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] response.setheader("x-ua-compatible") no funciona al recargar la pagina

Estas en el tema de response.setheader("x-ua-compatible") no funciona al recargar la pagina en el foro de Java en Foros del Web. Buenas tardes. Estoy creando una aplicación con JSF 2.1. Y me ha surgido un problema. Tengo un evento "prerenderview" donde según una condición, crea un ...
  #1 (permalink)  
Antiguo 18/09/2016, 03:07
 
Fecha de Ingreso: octubre-2015
Mensajes: 7
Antigüedad: 8 años, 6 meses
Puntos: 0
response.setheader("x-ua-compatible") no funciona al recargar la pagina

Buenas tardes.

Estoy creando una aplicación con JSF 2.1. Y me ha surgido un problema.
Tengo un evento "prerenderview" donde según una condición, crea un response.setheader("x-ua-compat") con valor ie=9 o ie=edge, según una condición.

Despues de hacer esto, hago un location.reload(); desde el formulario, para que me pille los cambios, ya que lei que para cambiar el header hay que refrescar la página. Cuando pulso f12 en el navegador y veo la vista compatibilidad veo que se cambia correctamente, pero el navegador no funciona como tal. Es decir, si que veo en la consola del navegador que se cambia de ie=edga a ie=9, pero el comportamiento del navegador no es como ie=9.

Alguien sabría decirme por que ocurre esto y como podría solucionarlo?

Muchas gracias a todos de antemano.

Un saludo!
  #2 (permalink)  
Antiguo 21/09/2016, 02:25
 
Fecha de Ingreso: octubre-2015
Mensajes: 7
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: response.setheader("x-ua-compatible") no funciona al recargar la pagina

Por si a alguien le interesa la solución, no es muy elegante que digamos jajaja.
Lo que hago es que hago ademas del cambio de compatibilidad, un refresh de la siguiente manera:

Código:
ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
HttpServletResponse response =  (HttpServletResponse)context.getResponse();
response.setHeader("X-UA-Compatible", "IE=edge");//o ie=9 según el caso
response.setHeader("Refresh", "0");
Luego cuando se carga la página tras el refresh, hago:
Código:
response.setHeader("Refresh", "5000");
Posiblemente no sea la solución mas elegante del mundo jaja pero me funciona bien. Espero que a alguien le pueda ayudar esta solución.

Muchas gracias. Un saludo!

Etiquetas: jsf
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:59.