Actualización de acceso a LIBRA en FORMS11 para los usuarios del navegador Chrome de Google

A partir de la versión 42 de Chrome, Google ha deshabilitado por defecto el plug in de Java, aunque puede habilitarse de forma manual hasta Septiembre de 2015.

Esto afectará a cualquier aplicación que utilice el plug in de java, habitual sobre todo en muchos de los servicios electrónicos de las administraciones públicas. Las empresas usuarias de LIBRA ERP que estén utilizando Forms 11 deberán acceder a LIBRA desde los navegadores Internet Explorer, Mozilla Firefox o Apple Safari.

Puede obtener más información sobre este aspecto en:

https://java.com/en/download/faq/chrome.xml

 


Actualización de Java 1.7.0_45 y Libra sobre Forms 11g

Desde la actualización de java a Java 1.7.0_45 los clientes que tienen una versión de Libra sobre Forms 11g les muestra un mensaje similar al siguiente:

Esta aplicación estará bloqueada en una futura actualización de seguridad de Java porque el archivo MANIFEST de JAR no contiene el atributo de permisos. Póngase en contacto con el publicador para obtener más información.
Esta aplicación estará bloqueada en una futura actualización de seguridad de Java porque el archivo MANIFEST de JAR no contiene el atributo de permisos. Póngase en contacto con el publicador para obtener más información.

Enero del 2014 es la fecha que ha puesto Oracle a la actualización que bloqueará las aplicaciones que no cumplan con los requisitos de seguridad marcados: https://blogs.oracle.com/java-platform-group/entry/new_security_requirements_for_rias.

Oracle ya ha publicado el parche 16837591 de Forms 11.1.2.1.0 y en Edisa el entorno 6.1.2 de Libra ya incluye las modificaciones necesarias para adaptarse a las nuevas exigencias de seguridad de Java. Durante los próximos días técnicos de Edisa se pondrán en contacto con todos los clientes que tienen Libra desplegado sobre la plataforma de Forms 11g, para realizar la actualización necesaria.

Aprovechando la necesidad de esta actualización, hemos ampliado la duración de nuestro certificado de firma de código al máximo posible de 3 años, por lo que la actualización que se efectuará será válida hasta Octubre del año 2016.

Para más información pueden ponerse en contacto con nuestro departamento de soporte.


Cambiar icono de Java en Forms 10g y 11g

Cuando se ejecuta una aplicación en Forms 10g ó 11g en una ventana independiente del navegador, es decir, con separateframe=true, el icono que se le asigna a la ventana en la barra de tareas es el de la taza de café de Java.

Este icono se puede modificar para poner uno personalizado. Ejemplo:

Para cambiar el icono hay que utilizar el procedimiento WebUtil_SeparateFrame.SetIcon de la librería WEBUTIL.PLL.
Ejemplo: WebUtil_SeparateFrame.SetIcon('/forms/java/libra_menu.gif');

El icono que se indica por parámetro debe de tener formato GIF o JPG y debe de encontrarse en la carpeta en donde están los jar de Java ($ORACLE_HOME/forms/java). En caso de no encontrar el archivo en esa carpeta dará el siguiente error: "WUB-603: No se ha podido cargar la imagen del icono ....."

El icono quedará guardado en la caché de Java para futuras ejecuciones:


Ejemplo de llamada a una función Java desde Oracle

Oracle permite integrar código Java en el propio motor de base de datos, en esta entrada se muestra un pequeño ejemplo.

El código Java a ejecutar se puede incorporar a la base de datos cargando un archivo .jar mediante la instrucción loadjava (comando de sistema operativo que se encuentra en el directorio BIN de la base de datos) o creándolo directamente de forma similar a como se crea una función, procedimiento o paquete. En este ejemplo se usa esta segunda opción.

El siguiente código recibe por parámetro una fecha, desglosada en 6 campos numéricos (año, mes, día, hora, minuto y segundo) y la devuelve en formato texto:

CREATE OR REPLACE AND RESOLVE JAVA SOURCE NAMED "JavaDate" AS
  package pruebas;
  import java.util.Calendar;

  public class JavaDate {  
    public static String getString(int anho, int mes, int dia, int hora, int minuto, int segundo) {
      Calendar calendar;        
      calendar = Calendar.getInstance();
      calendar.set(anho, mes, dia, hora, minuto, segundo);
      return calendar.getTime().toString();
    }
  }

Una vez está el código Java creado en la base de datos, hay que crear una función o procedimiento para llamarlo:

CREATE OR REPLACE FUNCTION f_javadate(p_anho NUMBER,
                                      p_mes NUMBER,
                                      p_dia NUMBER,
                                      p_hora NUMBER,
                                      p_minuto NUMBER,
                                      p_segundo NUMBER) RETURN VARCHAR2 IS LANGUAGE JAVA
 NAME 'pruebas.JavaDate.getString(int, int, int, int, int, int) return String';

 


Privacy Preference Center