Mostrando entradas con la etiqueta oracle. Mostrar todas las entradas
Mostrando entradas con la etiqueta oracle. Mostrar todas las entradas

viernes, 14 de octubre de 2011

Aplicaciones Web que usan distintas versiones de Java

Posible problema:

Necesitamos acceder a dos aplicaciones Web que usan dos versiones distintas de Java, la primera funciona únicamente con Java 1.4.2 (por ejemplo) y la segunda con Java 1.6 update 27 (o cualquier otra versión más reciente que la del primer ejemplo).

¿Como lo hacemos? Siguiendo estos pasos:

1.- Instalamos Java 1.4.2 (o el más antiguo)*.

2.- Instalamos Java 1.6 Update 27 (o el más nuevo)*.

3.- En caso de que sea necesario instalaremos Webpki o Multiwebpki (algunas aplicaciones lo requieren).

4.- En la carpeta de instalación de Java**, localizamos el archivo java.policy, lo abrimos con el bloc de notas, borramos todo su contenido y en su lugar copiamos lo siguiente:

grant {
  permission java.lang.RuntimePermission "accessClassInPackage.sun.misc";
  permission java.lang.RuntimePermission "accessClassInPackage.sun.security.pkcs11";
  permission java.security.AllPermission; 
  permission java.security.SecurityPermission "insertProvider.SunPKCS11-CardOS";
  permission java.security.SecurityPermission "removeProvider.SunPKCS11-CardOS";
  permission java.security.SecurityPermission "authProvider.SunPKCS11-CardOS";
  permission java.util.PropertyPermission "org.apache.commons.logging.LogFactory.HashtableImpl", "read";
  permission java.util.PropertyPermission "user.home", "read";
  permission java.io.FilePermission "<<ALL FILES>>", "read";
};

// Standard extensions get all permissions by default

grant codeBase "file:${{java.ext.dirs}}/*" {
permission java.security.AllPermission;
};

// default permissions granted to all domains

grant {
// Allows any thread to stop itself using the java.lang.Thread.stop()
// method that takes no argument.
// Note that this permission is granted by default only to remain
// backwards compatible.
// It is strongly recommended that you either remove this permission
// from this policy file or further restrict it to code sources
// that you specify, because Thread.stop() is potentially unsafe.
// See "http://java.sun.com/notes" for more information.
permission java.lang.RuntimePermission "stopThread";

// allows anyone to listen on un-privileged ports
permission java.net.SocketPermission "localhost:1024-", "listen";

// "standard" properies that can be read by anyone

permission java.util.PropertyPermission "java.version", "read";
permission java.util.PropertyPermission "java.vendor", "read";
permission java.util.PropertyPermission "java.vendor.url", "read";
permission java.util.PropertyPermission "java.class.version", "read";
permission java.util.PropertyPermission "os.name", "read";
permission java.util.PropertyPermission "os.version", "read";
permission java.util.PropertyPermission "os.arch", "read";
permission java.util.PropertyPermission "file.separator", "read";
permission java.util.PropertyPermission "path.separator", "read";
permission java.util.PropertyPermission "line.separator", "read";

permission java.util.PropertyPermission "java.specification.version", "read";
permission java.util.PropertyPermission "java.specification.vendor", "read";
permission java.util.PropertyPermission "java.specification.name", "read";

permission java.util.PropertyPermission "java.vm.specification.version", "read";
permission java.util.PropertyPermission "java.vm.specification.vendor", "read";
permission java.util.PropertyPermission "java.vm.specification.name", "read";
permission java.util.PropertyPermission "java.vm.version", "read";
permission java.util.PropertyPermission "java.vm.vendor", "read";
permission java.util.PropertyPermission "java.vm.name", "read";
};


Otra alternativa: En lugar de editar el archivo java.policy, también podemos borrarlo o renombrarlo y crear uno completamente nuevo que contenga el código arriba indicado.

5.- Guardamos cambios (cuidado en no cambiar la extensión del archivo, que deberá seguir siendo .policy) y cerramos.

6.- Procedemos a acceder a ambas aplicaciones Web y si todo ha ido bien, lo haremos sin problemas.

*NOTA: En la web oficial de ORACLE hay un repositorio con todas las versiones de Java cuya descarga es completamente gratuita.

**NOTA2: Normalmente el archivo java.policy suele encontrase en:
C:\Program Files (x86)\Java\jre6\lib\security (o similar).
Leer más...

jueves, 7 de julio de 2011

Internet Explorer se cierra con Oracle JInitiator

Es posible que al ejecutar alguna aplicación Web que use el complemento JInitiator el navegador Internet Explorer se cierre inesperadamente.

Existen diversas soluciones a este problema, la primera y más obvia es reinstalar el complemento Oracle JInitiator, que lo puedes descargar fácilmente haciendo una búsqueda en Google.

También hemos de darnos cuenta si tenemos alguna barra en el explorador del estilo "Google Toolbar" o "Softonic Toolbar", pues estos complementos en muchas ocasiones no permiten la ejecución del JInitiator. Habrá que deshabilitarlos y desinstalarlos.

Softonic Toolbar

Otra posible causa del problema puede ser que la protección de memoria del sistema esté activada. Para desactivada seguiremos los siguientes pasos:

1.- Abrimos las Opciones de Internet (ya sea desde el Panel de Control o desde el propio Internet Explorer.

2.- Nos vamos a la pestaña de "Opciones avanzadas" y desmarcamos la opción de "Habilitar la protección de memoria para ayudar a prevenir los ataques en linea"

Opciones de internet: Opciones avanzadas

3.- Pulsamos en "Aplicar" y "Aceptar" y reiniciamos el Explorador.

NOTA: Hay que disponer de permisos de administrador para poder deshabilitar esta opción.

NOTA2: Hay que tener en cuenta que deshabilitando esta opción desde un perfil, el cambio es global para todos los perfiles.

Quizá te interese también el artículo: "Internet Explorer se cierra solo"
Leer más...