![[17.0.0.3 and later]](../ng_v17003plus.gif)
Ubicaciones de valor de configuración válida en el tiempo de ejecución de Liberty
Las secciones siguientes describen las ubicaciones de valor de configuración válidas en el tiempo de ejecución de Liberty.
Variables de entorno
Todas las variables de entorno de proceso se incluyen en una configuración de API de MicroProfile Config cuando se solicita que se incluyan orígenes predeterminados. Liberty expone variables de entorno de proceso de host en el método de Java™ System.getenv() y añade adicionalmente propiedades del archivo server.env de servidor que, a su vez, están disponibles en la API de MicroProfile Config. Las variables de entorno se incluyen en la propiedad de ordinal 300.
Las propiedades que se originan en server.env de Liberty se pasan a la implementación de API de MicroProfile Config utilizando variables de entorno de sistema operativo. Solo las propiedades que tienen nombres de variable de entorno válidos en el entorno de host pueden originarse de server.env. Por ejemplo, los entornos de Linux no soportan los puntos .) en nombres de variable de entorno, así que nombres de propiedad como user.name no están soportados en server.env.
Propiedades del sistema
Todas las propiedades del sistema Java disponibles mediante System.getProperties() se incluyen en una configuración de la API de MicroProfile Config cuando se solicita que se incluyan fuentes predeterminadas. Liberty añade propiedades del archivo bootstrap.properties de servidor a las propiedades del sistema Java. Las propiedades del sistema se incluyen en la propiedad de ordinal 400.
Ubicaciones de archivo de MicroProfile Config
Si se ha solicitado añadir propiedades predeterminadas, la API de Microprofile Config carga las propiedades de los archivos ${CLASSPATH}/META-INF/microprofile-config.properties utilizando el ContextClassLoader de hebra o un ClassLoader proporcionado por el usuario. Para una aplicación Liberty, la ubicación de META-INF puede ser un subdirectorio en la raíz de un archivo JAR o WAR, o en un JAR en un directorio lib del archivo EAR, o en un JAR de biblioteca compartida de nivel de servidor. Los valores de propiedad cuyo origen es un archivo de propiedad se cargan en la prioridad de ordinal 100.
Fuentes cargadas de Java ServiceLoader
Las fuentes de configuración se pueden registrar mediante programa utilizando la API documentada en el sitio del proyecto de configuración MicroProfile. El patrón de Java ServiceLoader también se puede utilizar para localizar objetos de fuente de configuración que se descubren y cargan directamente durante el tiempo de ejecución.
Ámbito de valor de configuración
Las fuentes de configuración se cargan a través del código ClassLoader utilizando el método loadResources() y mediante el patrón ServiceLoader de Java. Así el ámbito de los valores de configuración duplica los valores de clases Java dentro de Liberty. Los valores de configuración de dentro de un archivo WAR de aplicación normalmente no son accesibles en otros archivos WAR, aunque estos valores de configuración formen parte del mismo servidor o ensamblaje de aplicaciones EAR. La configuración se puede compartir en un EAR colocando un ${CLASSPATH}/META-INF/microprofile-config.properties en un JAR en el directorio lib del EAR. Los valores de configuración se pueden compartir en un servidor de Liberty colocándolos en el archivo server.env o utilizando un elemento library en el archivo server.xml con una referencia commonLibrary correspondiente para aplicaciones que necesitan utilizar los valores de configuración comunes.