Buscar
Social
Ofertas laborales ES
« La semana pasada en javaHispano | Main | Cuando la calidad es inversamente proporcional al número de lineas a mantener »
domingo
jun092013

A no ser que pagues a Oracle, las franjas horarias de tus antiguos JDK no funcionarán correctamente

Las franjas horarias en los distintos países del mundo cambian continuamente (a veces hasta 4 o 6 veces al año) por distintos motivos; por ejemplo, aquí en España variamos dos veces al año nuestra franja horaria cambia para tratar de ahorrar energía eléctrica, y la fecha exacta del cambio varía de un año para otro.

tz database, también conocida como IANA Time Zone Database, es una base de datos que mantiene actualizadas las franjas horarias de todos los países del mundo y que es empleada por muchos softwares para mantener actualizadas sus franjas horarias; por ejemplo por los sistemas operativos. Y también es empleada por Oracle para mantener actualizadas las franjas horarias del JDK.

Cuando te bajas un nuevo JDK Oracle se ha encargado de incorporar en él los últimos cambios en franjas horarias recogidos en la tz database. Sin embargo, si instalas un  JDK/JRE y por algún motivo no lo actualizas, su información relativa a franjas horarias pronto estará desactualizada. Como existen escenarios en los que no se quiere/puede estar actualizando continuamente el JDK sobre el que corren las aplicaciones de producción, Sun antes y Oracle ahora tenían una herramienta llamada "Timezone Updater Tool" que uno podía usar para actualizar las franjas horarias de un JDK ya instalado. Pues bien, esta herramienta antes era gratuita, pero recientemente Oracle ha hecho que no se pueda acceder de modo gratuito a esta herramienta.

Si no es crucial para tu aplicación trabajar con fechas en múltiples países diferentes que están distribuidos en distintas franjas horarias, o si te puedes permitir el actualizar continuamente el JDK de tu aplicación, este cambio no te va a importar. En caso contrario, ahora no te va a quedar más remedio que pagar por el soporte de Oracle para Java SE para tener acceso a esta herramienta.

PrintView Printer Friendly Version

EmailEmail Article to Friend

Reader Comments (5)

Hay una alternativa sin necesidad de pagar nada: usar JODA-TIME

http://joda-time.sourceforge.net/tz_update.html

La base de datos http://www.twinsun.com/tz/tz-link.htm se puede incorporar a las fuentes de Joda-Time, y tras recompilar, ya están actualizadas las zonas.

junio 9, 2013 | Registered Commenterchoces

Las franjas horarias no cambian, lo que cambian es el DST (Day Saving Time). España siempre esta en la franja horaria GMT+1 (hora peninsular), pero dos veces al año adelantamos o retrasamos una hora.

Esta práctica nació después de la segunda guerra mundial para ahorrar combustible (en la iluminación y calefacción). Sin embargo, este "cambio horario" no es universal ni impuesto. Cada país decide cuando y como hacerlo. Incluso es posible que haya partes de un país que aplique el DST y otras partes que no.

Lo que Oracle ahora ofrece de pago es una herramienta que sirve para ajustar los DST en las instalaciones java antiguas. Es decir, la “"Timezone Updater Tool" es una herramienta para aplicaciones con alcance internacional que necesitan tiene actualizado los timezone (y los DST) pero que corre en sobre una instalación java antigua que no se puede (o quiere) actualizar. Este tipo de aplicaciones suelen ser propiedad de grandes corporaciones. Ingenieria Biomedica

Dicho esto me parece lógico que Oracle quiera vender un servicio empresarial al reducido número de empresas que utilizan estas funcionalidades (y hacen dinero con ellas).

junio 10, 2013 | Registered Commenteramatach

A mi humilde entender, eso devalua la jdk.

junio 10, 2013 | Unregistered CommenterMarcos Astorgano

@Marcos

Todas las versiones de JavaSE 1.7x incluyen las franjas horarias actualizadas, y son gratuitas. No veo el porqué de esa devaluación que mencionas.

junio 10, 2013 | Registered Commenterchoces

Por lo que leí dieron un paso atras y el utilitario estaría disponible para la jdk 1.7, no asi con versiónes anteriores (ya obsoletas) que necesitan recurrir al sporte empresarial de Oracle
http://www.oracle.com/technetwork/java/javase/tzupdater-readme-136440.html

junio 11, 2013 | Unregistered CommenterVisigoten

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>