Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/10/2009, 11:31
santiec
 
Fecha de Ingreso: julio-2009
Mensajes: 13
Antigüedad: 15 años, 6 meses
Puntos: 0
Pregunta Utilizar javascript dentro de una clase .java

Hola a todos, quisiera saber si me dan una mano con una inquietud que ando tratando de resolverla desde hace algunos dias...

Bueno, estoy realizando una aplicacion web con java, y quiero saber el nombre del navegador en la que actualmente se esta corriendo la aplicacion, de lo que he encontrado esto se lo puede hacer con javascript. Bueno encontre como ejecutar codigo javascript dentro de una clase java, pero ahora lo que necesito es RECUPERAR el resultado donde me indica el navegador que utiliza mi aplicacion.
Si alguien me puede dar una mano le agredeceria mucho.

Necesito recuperar el valor que me devuelve browserName

Mi código esta asi:

Código:
public class inicio extends AbstractPageBean
{ 

//....................

 
public void aceptar() throws IOException
    {
    
      //String javascriptCode = "window.alert('PRUEBAAAA'); window.opener=window; window.close();";

        String ccc = null;
        String javascriptCode="var nVer = navigator.appVersion;"+
        "var nAgt = navigator.userAgent;"+
        "var browserName  = navigator.appName;"+
        "var fullVersion  = ''+parseFloat(navigator.appVersion);"+
        "var majorVersion = parseInt(navigator.appVersion,10);"+
        "var nameOffset,verOffset,ix;" +
        // In MSIE, the true version is after "MSIE" in userAgent
                
        "if ((verOffset=nAgt.indexOf('MSIE'))!=-1){browserName = 'Microsoft Internet Explorer'; fullVersion = nAgt.substring(verOffset+5);}"+
        // In Firefox, the true version is after "Firefox"
        "if ((verOffset=nAgt.indexOf('Firefox'))!=-1){browserName = 'Firefox'; fullVersion = nAgt.substring(verOffset+8);}"+
        "<%='"+ccc+"'%>=browserName;"+ //aca trate de recuperar el resultado con algo que encontre en internet pero ni idea:'(
        "window.alert(browserName);";
       

      JavascriptContext.addJavascriptCall(FacesContext.getCurrentInstance(), javascriptCode);


//..............................aca se me ejecutan otros metdos ya hechos en java
      

     }
}

Saludos,