2009-07-24 13 views
5

buscando una clase de javascript como swfobject para incrustar java y tener un repliegue simple si el usuario no tiene java o rechaza la solicitud de seguridad.equivalente de java de swfobject

gracias,

Josh

Respuesta

6

Puede construir uno bastante fácilmente.

tener algo como un div establecido así:

<div id="java-applet"> 
Message to user saying that they need Java here 
</div> 

A continuación, agregue Java Plugin Detection (builder) a su JavaScript. Entonces si que devuelve cierto, entonces hacer algo como:

document.getElementById("java-applet").innerHTML = "<applet>stuff here</applet>"; 
2

Sólo incrustar el applet como lo hace normalmente e insertar el repliegue dentro o insertar un fragmento de código JavaScript para eliminar el objeto: Aparte de parámetro, puede agregar otros elementos, p.ej párrafos con texto o javascript llamando a alguna función para reemplazar el objeto.

<script type="text/javascript"> 
    function replace_object(x) { 
    $(x)... 
    } 
</script> 
<object x="y" id="some_applet"> 
    <param name="y" value="z"> 
    <p>java not available. some alternative here. <!-- option 1 --></p> 
    <script type="text/javascript"> 
    replace_object('some_applet'); // option 2 
    </script> 
</object> 
0

¡Esto ayuda!

Tuve un problema muy extraño al usar applet para hacer la descarga de archivos por lotes desde el servidor.

La solicitud de Ajax parece estar en conflicto con la solicitud del applet, la descarga del archivo del applet se interrumpe con alguna excepción de socket.

El applet funciona bien bajo JRE5.0, podría ser causado por nuestra reciente actualización a JRE6.0.

<div id="java-applet"></div> 
<script> 
    var t; 
    function startApplet() { 
     var attributes = {codebase:'<%=request.getContextPath()%>', 
          code:'<%=appletClass%>', 
          archive:'applet/SignedApplet.jar', 
          width:0, 
          height:0} ; 
     var parameters = {para1:'value1', 
          para2:'value2', 
          java_arguments:'-Xms64m -Xmx512m' 
     } ; 
     var version = '1.6' ; 
     var buildAppletTag = function() { 
      var tag = '<applet'; 
      for (var attribute in attributes){ 
       tag += (' ' + attribute + '="' + attributes[attribute] + '"'); 
      } 
      tag += ">"; 
      for (var parameter in parameters){ 
       tag += '<param name="' + parameter + '" value="' + parameters[parameter] + '"/>'; 
      } 
      tag += '</applet>'; 
      return tag; 
     }; 
     document.getElementById("java-applet").innerHTML = buildAppletTag(attributes, parameters, version); 
     clearTimeout(t); 
    } 
    t = setTimeout("startApplet()", 1000); // delayed 
</script>