2009-06-12 15 views

Respuesta

14

Hay una sección en The Java Tutorials titulado Using applet, object and embed Tags que aborda la cuestión

Desde el General Considerations:.

Desplegando applets en Internet frente a una Intranet

Cuando desplegar applets:

  • Usar applet si se accede a la página web a través de Internet.
  • Utilice la etiqueta object o embed si se accede a la página web a través de una Intranet .

Distribución de las applets para navegadores específicos

Al implementar los applets:

  • Para Internet Explorer sólo, utilizan la etiqueta object.
  • Para la familia de navegadores Mozilla solamente, utilice la etiqueta embed.

Si debe implementar un applet en un entorno de navegador mixto, siga las instrucciones en la sección Deploying Applets in a Mixed-Browser Environment.

Cabe señalar que la etiqueta applet ha quedado obsoleta, por lo que probablemente no sea deseable usar esa etiqueta. (More information on the applet tag from the W3C)

(Nota:. Enlaces se han actualizado desde la edición anterior de vincular a los tutoriales de Java)

+0

gracias por esa información. no sé por qué no encontré eso ... –

+0

enlaces no funcionan más :( – ManBugra

+0

@ManBugra He actualizado los enlaces –

23

si se puede atacar de Java 6 Update 10 o mejor, que pueda simplify your life:

<script src="http://java.com/js/deployJava.js"></script> 
<script> 
    var attributes = {codebase:'http://java.sun.com/products/plugin/1.5.0/demos/jfc/Java2D', 
         code:'java2d.Java2DemoApplet.class', 
         archive:'Java2Demo.jar', 
         width:710, height:540} ; 
    var parameters = {fontSize:16} ; 
    var version = '1.6' ; 
    deployJava.runApplet(attributes, parameters, version); 
</script> 
+1

¿No se puede implementarJava.js implementar applets para versiones anteriores de Java también? –

1

Puede considerar el uso de Java Web Start en lugar de un applet si está haciendo una aplicación. Los applets se usan solo si están creando algo que debe mostrarse en un navegador.

+0

lamentablemente , tendré que usar un applet, porque lo necesito para cifrar/descifrar datos de una llamada ajax (que también funcionaría en javascript, pero es decir, daaaaamn lento), así que decidimos usar un applet para ese –

6

Utilice deployJava.js, incluso si NO tiene como objetivo solo 1.6 o superior. Lo he estado utilizando durante más de un año, con applets que aún admiten incluso el MSJVM (Java 1.1).

¡Hay muchas funciones que no están disponibles en el script para JRE antiguos, pero aún así son bastante útiles!

3

Bueno, tenga en cuenta que deployJava.js está diseñado para ser llamado en el tiempo de carga del documento.Entonces, si inserta el applet dinámicamente, después de un evento, después de que DOM se haya construido, no tiene suerte con este nuevo enfoque estándar. Tuvimos que usar la construcción object/embed/noembed.

Editar: Oh, alguien encontró una mejor manera para esto, pero esta alteración manual requerido de deployJava.js originales de Sun, consulte el siguiente enlace: Java Plug-In - Important addition to deployJava.js

+0

hoy, tenía exactamente el mismo problema. Y ... sí ... realmente pensé en eso también, pero una extraña sensación en mis entrañas me dice que esto no es lo correcto ... PLUS: deployJava.js es minificado y realmente no quiero desminificarlo a mano (¿hay alguna herramienta?) Perhabs alguien debería hacer esto, corregir DespliegaJava y ponlo en Github ... –

+2

Mira la versión humana legible de Deployment Toolkit aquí: http://www.java.com/js/deployJava.txt –

1

deployJava.js tiene muchos graves carencias.

Lea mi write-up on deployJava.js en Oracles foro de Java.

Me encantaría comenzar un proyecto de código abierto sobre esto, pero no tengo experiencia en iniciar o hacer nada de código abierto. ¿Alguien se preocupa por ayudarme a comenzar? (Preferiblemente en BitBucket utilizando Mercurial.) Si es así, coméntelo y contácteme directamente.

+0

entonces definitivamente deberíamos "asociarnos", ya que ' Siempre estamos en la necesidad de una forma de implementar applets Java en una forma de navegador cruzado. –

+0

Aquí está - una versión 1.0 de appletjs: https://bitbucket.org/terjedahl/appletjs –

+0

Y necesito una solución que funcione sin internet, y también necesita trabajar para agregar applets después de la carga. –

1

La continuación deben trabajar con navegadores: -

<p> 
<object type="application/x-java-applet" 
    name="accessName" width="300" height="200"> 
    <param name="code" value="className" /> 
    <param name="archive" value="jarName.jar" /> 
    <param name="scriptable" value="true" /> 
    <param name="mayscript" value="true" /> 
</object> 
</p> 

En mis pruebas tanto IE8 y FF5 requiere el atributo "tipo". Cualquier atributo classid objeto provocó que fallara Firefox. El complemento mayscript será ignorado por los complementos de Java después de 1.6.0.10. El parámetro de secuencia de comandos aún se requiere de acuerdo con javadocs 1.6.0.21. En una prueba con 1.6.0.24 para un applet firmado, IE8 lo llamó OK de JS sin que scriptable se establezca como verdadero.

+2

-1 Después de haberle advertido sobre el script 'deployJava.js', es decepcionante ver que saca todas estas respuestas antiguas para dar el mismo consejo (desactualizado). –

Cuestiones relacionadas