Ver Mensaje Individual
  #9 (permalink)  
Antiguo 25/05/2011, 06:46
Pelirr
 
Fecha de Ingreso: diciembre-2008
Mensajes: 233
Antigüedad: 16 años
Puntos: 1
Respuesta: coger idioma del navegador IE

Javascript. Estoy intentando lo siguiente:

Código:
<script type="text/javascript">			
			var urlIdioma = 'Idioma.servlet';
			jQuery.ajax({
			   type: 'GET',
			   cache: false,
			   url: urlIdioma,
			   dataType: 'text',
			   success: function (text, textstatus) {
				 alert('text'+text+', textstatus'+textstatus);
			   },
			   error: function (xhr, textEstatus, errorThrown) {
				 alert('xhr'+xhr+', textEstatus'+textEstatus+', errorThrown'+errorThrown);
				 
				
			   }
			});
		</script>
y en el servlet, lo siguiente:

Código:
package es.indra.aodb.maintenance.resources.web.action.gate;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class IdiomaServlet extends HttpServlet {
	
	private static final long serialVersionUID = -7897645237016575215L;

	@Override
	public void service (HttpServletRequest request, HttpServletResponse response)
	{					
		String clientLanguage = request.getHeader("Accept-Language");
		((HttpServletResponse) request).setHeader("Accept-Language", clientLanguage);
		request.getSession().setAttribute("idioma",clientLanguage);	
	}
}
pero no llega al servlet, no sé por qué. Lo tengo definido en el web.xml:

Código:
    <servlet>
        <servlet-name>IdiomaServlet</servlet-name>
        <servlet-class>es.indra.aodb.maintenance.resources.web.action.gate.IdiomaServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
Y no hace más que darme error, el 404. Creo que debe estar mal direccionado al servlet, o que me falte algo, pero ahora no veo qué es. Si me puedes echar un cable te lo agradecería, porque creo que está ahí la solución.

Un saludo