Foros del Web » Programación para mayores de 30 ;) » Java »

Editar .properties en tiempo de ejecución

Estas en el tema de Editar .properties en tiempo de ejecución en el foro de Java en Foros del Web. Hola a todos, he comprobado que editar un fichero .properties en tiempo de ejecución no sirve de nada, ya que tengo que reinciar el servidor ...
  #1 (permalink)  
Antiguo 15/06/2012, 03:51
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 8 meses
Puntos: 78
Editar .properties en tiempo de ejecución

Hola a todos,
he comprobado que editar un fichero .properties en tiempo de ejecución no sirve de nada, ya que tengo que reinciar el servidor de aplicaciones para que la modificación sea efectiva.

Alguien sabe si se puede modificar y APLICAR en tiempo de ejecución?

Un valor como "desactivar la web por mantenimiento" viene muy bien en un properties, pero en vista del comportamiento que tiene en tiempo de ejecución, hace que sea inservible.

La cosa debe estar en que al arrancar el servidor de aplicaciones, se debe llevar los ficheros a algún temporal o memoria, de ahí que haga caso omiso a los cambios.

¿Alguna sugerencia?

Gracias a todos y un saludo!
  #2 (permalink)  
Antiguo 15/06/2012, 06:22
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Editar .properties en tiempo de ejecución

Hola:

Depende de cómo leas el fichero de properties. Si lo hace tu aplicación en el arranque y no lo vuelve a releer periódicamente, no sirve.

Si el fichero de properties se lee como recurso (classpath, dentro de un jar, etc) tampoco sirve de nada cambiarlo porque el ClassLoader es el que se encarga de leerlo y lo lee solo una vez. Las siguientes lecturas que hagas a través del ClassLoader te darán la versión en memoria y no el fichero.

La única opción es que leas periódicamente dicho fichero como un fichero normal (properties.load(new FileInputStream(....));

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 15/06/2012, 07:15
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 8 meses
Puntos: 78
Respuesta: Editar .properties en tiempo de ejecución

Hola chuidiang,
me lo has aclarado perfectamente.

Haré lo que comentas en un interceptor de Struts2 y me aseguro la lectura al editarlo el tiempo de ejecución.

Muchas gracias y un saludo!

Etiquetas: properties, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:16.