Propiedades
Introducción
Se pueden especificar varias propiedades dentro del archivo application.properties, dentro del archivo application.yml o como interruptores de línea de comandos. Este documento proporciona una lista de propiedades comunes de AWE y referencias a las clases subyacentes que las consumen.
ℹ️ Los valores de las propiedades pueden provenir de archivos jar adicionales en el classpath, por lo que no se debería considerar esta como una lista exhaustiva. También puede definir sus propias propiedades.
ℹ️ Para conocer el resto de propiedades de configuración de Spring Boot, visite Spring Appendix A
Propiedades base de AWE
Estas son las propiedades base de configuración de la aplicación para los proyectos AWE. Tienen el prefijo awe.application.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.application.encoding | Codificación base para todos los archivos. | UTF-8 |
| awe.application.name | Nombre de la aplicación. | AWE (Almis Web Engine) |
| awe.application.language-default | Idioma de la aplicación en formato ISO 639-1 de 2 letras (en = inglés). | en (en = inglés) |
| awe.application.language-list | Idiomas disponibles de la aplicación en formato ISO 639-1 de 2 letras (en = inglés). | en, es, fr lista con los idiomas EN, ES, FR |
| awe.application.theme | Tema de la aplicación. | sky tema Sky |
| awe.application.theme-primary | Color primario del tema de la aplicación: una de las paletas de AWE 5 (emerald, green, teal, cyan, sky, blue, indigo, violet, purple, fuchsia, pink, rose, red, orange, amber, yellow, lime) o un color hexadecimal (#RGB o #RRGGBB). Sustituye al color primario del tema. | vacío (el color primario del tema; si no, emerald) |
| awe.application.theme-surface | Superficie del tema de la aplicación: una de las paletas neutras de AWE 5 (slate, gray, zinc, neutral, stone), auto o un color hexadecimal (#RGB o #RRGGBB). Sustituye a la superficie del tema. | vacío (la superficie del tema; si no, auto) |
| awe.application.theme-mode | Modo del tema de la aplicación: light, dark o system (sigue al sistema operativo). Sustituye al modo del tema; el modo que elige el usuario lo sustituye a él. | vacío (el modo del tema; si no, system) |
| awe.application.density | Densidad de la aplicación: comfortable o compact. La densidad que elige el usuario la sustituye. | comfortable |
| awe.application.acronym | Acrónimo de la aplicación. Corresponde al nombre del artifactId del proyecto. | awe |
| awe.application.menu-type | Configura la disposición del menú de la aplicación. Horizontal o vertical. | horizontal |
| awe.application.menu-search-enabled | Habilita el cuadro de búsqueda de opciones del menú. Establézcalo en false para ocultarlo. | true |
| awe.application.map.tile-url | Plantilla de URL de las teselas de los mapas, con los marcadores {z}, {x} e {y}. Respete la política de uso del servidor de teselas: el servidor de OpenStreetMap por defecto es para uso ligero, use su propio servidor de teselas si el tráfico es alto. | https://tile.openstreetmap.org/{z}/{x}/{y}.png |
| awe.application.login.layout | Diseño de la página de inicio de sesión: split (la columna del formulario junto al panel de fondo), form-only (el formulario centrado y solo) o card (el formulario en una tarjeta sobre el fondo a pantalla completa). Cualquier otro valor equivale a split. | split |
| awe.application.login.logo | Logotipo de la página de inicio de sesión. Admite una URL relativa a la raíz de la aplicación, una URL absoluta o una URI data:. Si está vacío, se usa awe.application.paths.image-startup-logo si se ha cambiado y, si no, el logotipo de AWE. | vacío |
| awe.application.login.logo-dark | Logotipo de la página de inicio de sesión en modo oscuro. Admite una URL relativa a la raíz de la aplicación, una URL absoluta o una URI data:. | vacío (el logotipo) |
| awe.application.login.background | Imagen de fondo de la página de inicio de sesión: el panel del diseño split y el fondo del diseño card. Admite una URL relativa a la raíz de la aplicación, una URL absoluta o una URI data:. Si está vacía, se usa awe.application.paths.image-startup-background si se ha cambiado y, si no, el panel de marca de AWE. | vacío |
| awe.application.login.background-effect | Nombre de un efecto canvas que registra la aplicación para el panel de imagen de la página de inicio de sesión (el panel del diseño split y el fondo del diseño card; el diseño form-only no tiene fondo). AWE no incluye ningún efecto: la aplicación registra los efectos que escribe en su propio bundle y elige uno aquí (consulte "Efecto de fondo propio" en el sistema de diseño para el contrato y los ejemplos). Vacío significa sin efecto, así que se mantiene la imagen de fondo. | vacío |
| awe.application.login.title | Título del formulario de inicio de sesión. Una clave de idioma o un literal. | SCREEN_TEXT_LOGIN_TITLE ("Bienvenido a AWE") |
| awe.application.login.subtitle | Subtítulo del formulario de inicio de sesión. Una clave de idioma o un literal. | SCREEN_TEXT_LOGIN_SUBTITLE ("Introduce tus credenciales para continuar.") |
| awe.application.login.panel-title | Título del pie sobre la imagen de fondo. Una clave de idioma o un literal. | SCREEN_TEXT_LOGIN_PANEL_TITLE ("AWE Framework") |
| awe.application.login.panel-subtitle | Texto del pie sobre la imagen de fondo. Una clave de idioma o un literal. | SCREEN_TEXT_LOGIN_PANEL_SUBTITLE ("Aplicaciones web funcionales completas con low code") |
| awe.application.login.footer-text | Texto del pie de la página de inicio de sesión, por ejemplo el copyright. Una clave de idioma o un literal. | vacío |
| awe.application.login.powered-by | Muestra "Powered by AWE 5" en el pie de la página de inicio de sesión. | true |
| awe.application.login.language-selector | Muestra el selector de idioma en el pie de la página de inicio de sesión, con los idiomas de awe.application.language-list. | true |
| awe.application.login.mode-selector | Muestra el selector de modo claro, oscuro y sistema en el pie de la página de inicio de sesión. | true |
| awe.application.module-list | Lista de módulos de la aplicación separados por comas. Se utiliza para cargar los archivos xml de cada módulo. | |
| awe.application.default-role | Rol de usuario por defecto de la aplicación cuando el usuario inicia sesión con el método de autenticación | operator |
| awe.application.address | Nombre del parámetro de dirección de la aplicación. | address |
| awe.application.reload-current-screen | Recargar la pantalla actual. | false |
| awe.application.xml-hot-reload | Habilita la recarga en caliente de las definiciones XML (solo desarrollo): los archivos XML modificados se recargan en el momento sin reiniciar. | false |
| awe.application.xml-hot-reload-sources | Directorios de origen a vigilar para la recarga en caliente de XML (p. ej. src/main/resources). Los archivos XML modificados se copian a la ubicación del classpath antes de recargarlos. | |
| awe.application.extension-xml | Nombre del parámetro de extensión de los archivos XML. | .xml |
| awe.application.print-all-options-enable | Mostrar todas las opciones de impresión. | true |
| awe.application.log-group | Define la ruta padre de los archivos de log de la aplicación. | /application |
| awe.application.log-manager-path | Define la ruta donde el gestor de logs de awe busca los archivos de log. | ${logging.file.path:${java.io.tmpdir}} ${awe.application.log.group:/application} |
| awe.application.log-user-enable | Indicador para activar el appender de archivos de log por usuario. | true |
| awe.application.chart-server-url | URL del servidor de gráficos de AWE, que dibuja en SVG los gráficos del servidor (ChartService) con Apache ECharts. | http://localhost:7801 |
| awe.application.loading-timeout | Tiempo de espera de carga en milisegundos. | 10000ms Duration |
| awe.application.xstream-driver-type | XStream(analizador de archivos XML) tipo de driver. Elija entre dom, xpp y stax. Cámbielo si la carga de XML es lenta | dom |
| awe.application.json-only | Servir solo JSON. AWE elimina de la lista de conversores de mensajes HTTP todos los que anuncian XML, de modo que su formato de comunicación no depende de que un proveedor XML (como jackson-dataformat-xml) llegue al classpath de forma transitiva. Con esta opción habilitada, un Accept: application/xml explícito responde 406 Not Acceptable. Establézcala en false para mantener los conversores XML; cualquier otro valor deja activo solo JSON. | true |
| awe.application.files.actions | Nombre del archivo XML de definición de acciones. | Actions |
| awe.application.files.services | Nombre del archivo XML de definición de servicios. | Services |
| awe.application.files.locale | Nombre del archivo XML de definición de locales. | Locale- |
| awe.application.files.enumerated | Nombre del archivo XML de definición de enumerados. | Enumerated |
| awe.application.files.query | Nombre del archivo XML de definición de consultas. | Queries |
| awe.application.files.queue | Nombre del archivo XML de definición de colas. | Queues |
| awe.application.files.maintain | Nombre del archivo XML de definición de mantenimientos. | Maintain |
| awe.application.files.components | Nombre del archivo XML de definición de componentes. | Components |
| awe.application.files.templates | Nombre del archivo XML de definición de plantillas. | Templates |
| awe.application.files.email | Nombre del archivo XML de definición de correos electrónicos. | Email |
| awe.application.files.menu-public | Nombre del archivo XML de definición del menú público. | public |
| awe.application.files.menu-private | Nombre del archivo XML de definición del menú privado. | private |
| awe.application.paths.base | Ruta base de la aplicación. | / ruta raíz |
| awe.application.paths.application | Ruta de la carpeta de la aplicación. | /application/ |
| awe.application.paths.global | Ruta de la carpeta global. | /global/ |
| awe.application.paths.locale | Ruta de la carpeta de locales. | /locale/ |
| awe.application.paths.screen | Ruta de la carpeta de pantallas. | /screen/ |
| awe.application.paths.profile | Ruta de la carpeta de perfiles. | /profile/ |
| awe.application.paths.menu | Ruta de la carpeta de menús. | /menu/ |
| awe.application.paths.templates | Ruta de la carpeta de plantillas. | templates/ |
| awe.application.paths.templates-angular | Ruta de la carpeta de plantillas de Angular. | angular |
| awe.application.paths.tag | Ruta de la carpeta de etiquetas. | tags/ |
| awe.application.paths.tag-angular | Ruta de la carpeta de etiquetas de Angular. | tags/angular/ |
| awe.application.paths.server | Ruta del servidor. Se utiliza para establecer la URL inicial. | |
| awe.application.paths.images | Ruta de la carpeta de imágenes. | images/ |
| awe.application.paths.reports | Ruta de la carpeta de destino de los informes. | @reports (@ es una ruta relativa a la propiedad awe.application.paths.base) |
| awe.application.paths.reports-historic | Ruta de la carpeta de destino del histórico de informes. | @historicReports/ (@ es una ruta relativa a la propiedad awe.application.paths.base) |
| awe.application.paths.documents | Ruta de la carpeta de documentos. | static/docs/ |
| awe.application.paths.jrx | Ruta de la carpeta de jrx de Jasper. | /jrx/ |
| awe.application.paths.temp | Ruta de la carpeta temporal. | ${java.io.tmpdir:/tmp} |
| awe.application.paths.icon-favicon | Ruta del icono favicon. Usa application.paths.images como ruta padre. | /images/icon/favicon-awe.ico |
| awe.application.paths.icon-phone | Ruta del icono de Apple de 57x57. Usa application.paths.images como ruta padre. | /images/icon/favicon-awe.ico |
| awe.application.paths.image-startup-logo | Obsoleta para la página de inicio de sesión: use awe.application.login.logo en su lugar; un valor distinto del valor por defecto solo se usa cuando awe.application.login.logo está vacía. En AngularJS sigue dando estilo a las pantallas de cambio de contraseña y de 2FA. Logotipo de la pantalla de inicio de sesión. El valor se inyecta directamente en el url(...) de CSS, por lo que debe ser una URL que el navegador pueda resolver. Los valores relativos normalmente deberían mantener la forma por defecto ../images/...; los valores absolutos /..., http(s)://..., data:... y file://... se pasan sin modificar. Una URI file:// la resuelve el navegador del cliente, no el servidor de AWE. Para usar una imagen de un sistema de archivos montado en el despliegue de AWE, exponga únicamente una carpeta pública de recursos HTTP estáticos y configure esta propiedad con esa ruta HTTP. | ../images/logo/logo-awe-nuevo.svg |
| awe.application.paths.image-navbar-logo | Logotipo de la barra de navegación (AngularJS). Con el símbolo AWE por defecto el tema dibuja la palabra AWE a su lado; otro logotipo se muestra solo. Sigue las mismas reglas de resolución que awe.application.paths.image-startup-logo. | ../images/logo/awe-logo-mark.svg |
| awe.application.paths.image-startup-background | Obsoleta para la página de inicio de sesión: use awe.application.login.background en su lugar; un valor distinto del valor por defecto solo se usa cuando awe.application.login.background está vacía. En AngularJS sigue dando estilo a las pantallas de cambio de contraseña y de 2FA. Imagen de fondo de la pantalla de inicio de sesión. Sigue las mismas reglas de resolución que awe.application.paths.image-startup-logo. | ../images/background/signin-bg-1.jpg |
| awe.application.parameter.username | Valor del parámetro de nombre de usuario de la pantalla. | cod_usr |
| awe.application.parameter.password | Valor del parámetro de contraseña de la pantalla. | pwd_usr |
| awe.application.parameter.token | Nombre del parámetro de token. | t |
| awe.application.screen.home | Nombre de la pantalla de inicio. | home |
| awe.application.screen.change-password | Nombre de la pantalla de cambio de contraseña. | change_password |
| awe.application.screen.initial | Nombre de la pantalla inicial por defecto. | information |
| awe.application.component.size | Tamaño de los componentes. | md (mediano) |
| awe.application.component.data-suffix | Sufijo del parámetro de datos enviado desde el cliente. | .data |
| awe.application.component.grid-rows-per-page | Filas por página en el componente de cuadrícula (establézcalo en 0 para evitar la paginación). | 30 |
| awe.application.component.grid-columns-panel | Cómo muestra la barra de herramientas las columnas de los grids que no definen columns-panel: popover (anclado al botón de columnas), dialog (un diálogo modal) o side-panel (un panel anclado al borde derecho de la pantalla). | popover |
| awe.application.component.grid-icon-loading | Indicador de carga por defecto de los grids que no definen icon-loading. skeleton muestra filas de relleno con las columnas del grid en cada carga; skeleton-dim las muestra en la primera carga y atenúa las filas en una recarga; spinner (u otro valor de icon-loading) recupera el indicador anterior. | skeleton |
| awe.application.component.grid-pixels-per-character | Píxeles por carácter en las cuadrículas. | 8 |
| awe.application.component.criteria-rows-per-page | Filas por página en el componente de criterio (establézcalo en 0 para evitar la paginación). | 100 |
| awe.application.component.computed-empty-if-null | Vacía los valores calculados si alguno de los comodines está vacío. | true |
| awe.application.component.suggest-timeout | Tiempo de espera del componente de sugerencia en milisegundos. | 300ms Duration |
| awe.application.component.help-timeout | Tiempo de espera de la ayuda de componentes en milisegundos. | 1000ms Duration |
| awe.application.component.upload-file-id | Id del componente de carga de archivos. | u |
| awe.application.component.upload-file-path | Ruta para la subida de archivos (relativa a application.base.path si empieza por @). | @upload/ (@ es una ruta relativa a la propiedad awe.application.paths.base) |
| awe.application.component.upload-max-file-size | Tamaño máximo de los archivos subidos (en MB). | 100MB DataSize |
| awe.application.component.upload-max-files-folder | Número máximo de elementos por carpeta. Se utiliza para crear la carpeta temporal donde se guardan los archivos subidos. | 100 |
| awe.application.component.download-file-id | Id del componente de descarga de archivos. | d |
| awe.application.component.pivot-num-group | Límite del número de elementos de grupo del componente de tabla dinámica. | 5000 |
| awe.application.component.chart-limit-point-serie | Límite de puntos de las series en el componente de gráfico. | 1000000 |
| awe.application.component.tooltip.ok-timeout | Tiempo de espera de los mensajes ok (en milisegundos). | 2000ms Duration |
| awe.application.component.tooltip.error-timeout | Tiempo de espera de los mensajes de error (en milisegundos). | 0ms Duration |
| awe.application.component.tooltip.warning-timeout | Tiempo de espera de los mensajes de advertencia (en milisegundos). | 4000ms Duration |
| awe.application.component.tooltip.info-timeout | Tiempo de espera de los mensajes de información (en milisegundos). | 0ms Duration |
| awe.application.component.tooltip.validate-timeout | Tiempo de espera de los mensajes de validación (en milisegundos). | 2000ms Duration |
| awe.application.component.tooltip.help-timeout | Tiempo de espera de los mensajes de ayuda (en milisegundos). | 5000ms Duration |
| awe.application.component.tooltip.chat-timeout | Tiempo de espera de los mensajes de chat (en milisegundos). | 0ms Duration |
| awe.application.component.tooltip.wrong-timeout | Tiempo de espera de los mensajes incorrectos (en milisegundos). | 0ms Duration |
| awe.application.jms.enabled | Habilita el conector de servicios JMS de AWE. | false |
| awe.application.jms.service-timeout | Tiempo de espera del servicio JMS en milisegundos. | 10000ms Duration |
| awe.application.jms.message-time-to-live | Tiempo de vida del mensaje JMS en milisegundos. Valor por defecto 0ms (el mensaje permanece en la cola indefinidamente hasta que se procesa) | 0ms Duration |
| awe.application.file-manager.base-path | Ruta base del gestor de archivos. | / (ruta raíz) |
| awe.application.file-manager.date-format | Formato de fecha del gestor de archivos. | yyyy-MM-dd hh:mm:ss |
| awe.application.task.pool.size | Tamaño del pool del ejecutor de tareas. | 20 |
| awe.application.task.pool.max-size | Número máximo de elementos del pool del ejecutor de tareas. | 50 |
| awe.application.task.pool.queue-size | Tamaño de la cola del ejecutor de tareas. | 1000 |
| awe.application.task.pool.await-termination | Espera de finalización del ejecutor de tareas en segundos. | 120s Duration |
| awe.application.task.pool.thread-prefix | Prefijo de los hilos del pool ejecutor de AWE. | AweThread- |
| awe.application.task.pool.help-thread-prefix | Prefijo de los hilos del pool ejecutor de ayuda de AWE. | AweHelpThread- |
| awe.application.task.pool.contextless-thread-prefix | Prefijo de los hilos del pool ejecutor sin contexto de AWE. | AweInitThread- |
Propiedades de base de datos de AWE
Estas son las propiedades de configuración de base de datos para los proyectos AWE. Tienen el prefijo awe.database.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.database.enabled | Habilita la carga de beans de base de datos de awe. | true |
| awe.database.parameter-name | Nombre del criterio de base de datos. Configura el parámetro de base de datos para obtener el valor del contexto de la pantalla. | _database_ |
| awe.database.limit-log-size | Limita el tamaño del log cuando se imprime una consulta (0 para deshabilitar). | 0 |
| awe.database.log-masked-fields | Columnas cuyos valores se enmascaran ('********') en el SQL que se escribe en el log y en los errores de consulta (sin distinguir mayúsculas). Los valores de las variables STRING_HASH_* y STRING_ENCRYPT se enmascaran siempre. | l1_pas |
| awe.database.multidatabase-enable | Habilita el modo multibase de datos. Habilita un datasource personalizado para permitir conexiones a varias bases de datos. | false |
| awe.database.migration-modules | Lista de módulos separados por comas que flyway debe migrar. | AWE |
| awe.database.migration-prefix | Nombre del patrón de prefijo de los scripts de migración. Valor por defecto [Module]_V (Ej: AWE_V) | %s_V |
| awe.database.migration-repeatable-prefix | Nombre del patrón de prefijo de los scripts de migración repetibles. Valor por defecto [Module]_R (Ej: AWE_R) | %s_R |
| awe.database.audit-enable | Habilita las operaciones de auditoría en el motor de base de datos de AWE. | true |
| awe.database.audit-date | Nombre de la columna de fecha en las tablas de auditoría. | HISdat |
| awe.database.audit-user | Nombre de la columna de usuario en las tablas de auditoría. | HISope |
| awe.database.audit-action | Nombre de la columna de acción en las tablas de auditoría. | HISact |
| awe.database.audit-lag | Desfase de auditoría en milisegundos. Se utiliza para construir una marca de tiempo en el proceso de auditoría. | 100ms Duration |
| awe.database.batch-max | Tamaño de bloque (chunk) para las operaciones por lotes. | 100 |
Propiedades de mantenimiento de AWE
Estas son las propiedades de configuración de mantenimiento para los proyectos AWE. Tienen el prefijo awe.maintain. El modo de validación de mantenimientos múltiples solo se aplica a los destinos de mantenimiento múltiple respaldados por SQL; los mantenimientos delegados a servicios (serve), de colas y de correo electrónico no se ven afectados. La frontera de transacción de cada mantenimiento se describe en Transacciones.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.maintain.multiple.validation-mode | Comportamiento de validación cuando un mantenimiento múltiple no tiene declarada ninguna variable de lista que no sea de auditoría. strict lanza un error, protegiendo los nuevos desarrollos. warn registra una advertencia con el id de la operación y omite la operación, conservando durante la migración la semántica sin efecto anterior a la 4.12.1. | strict |
| awe.maintain.transaction.enabled | Ejecuta cada mantenimiento dentro de una transacción de su DataSource. Los mantenimientos anidados y los pasos retrieve-data sobre el mismo DataSource se unen a ella, y cualquier fallo o resultado ERROR deshace el mantenimiento completo. Desactívela para mantener el comportamiento anterior: cada mantenimiento confirma su propia conexión de forma independiente. | true |
Propiedades de seguridad de AWE
Estas son todas las propiedades de configuración de seguridad para los proyectos AWE. Tienen el prefijo awe.security.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.security.master-key | Clave maestra que cifra los datos almacenados (parámetros y propiedades cifrados). Obligatoria: no tiene valor por defecto. Las aplicaciones actualizadas desde AWE 4 que nunca la definieron deben definir el antiguo valor por defecto para seguir descifrando sus datos (consulte la guía de migración a AWE 5) y rotarla después. | Ninguno (obligatoria) |
| awe.security.auth-mode | Modo de autenticación. | bbdd BBDD (Database) |
| awe.security.auth-custom-providers | Proveedores de clases de autenticación personalizadas. Se utilizan para implementar su propio proveedor de autenticación. | |
| awe.security.json-encrypt-enable | Habilita la codificación json con BASE64 entre cliente y servidor. | false |
| awe.security.json-parameter | Nombre de la lista de parámetros cifrados. | p |
| awe.security.default-restriction | Conjunto de restricciones por defecto (el valor por defecto debería ser el más restrictivo). | general |
| awe.security.role-prefix | Prefijo de rol para construir los permisos de usuario en Spring Security. | ROLE_ |
| awe.security.xstream-allow-paths | Rutas permitidas para el serializador xstream. | java.*", "com.almis.awe.model.entities.**_ |
| awe.security.password-pattern | Patrón regex de la contraseña. Se utiliza en el campo de validación de criterios. | .* |
| awe.security.password-min-length | Longitud mínima de la contraseña. Se utiliza en el campo de validación de criterios. | 4 |
| awe.security.password-encoder | Algoritmo del hash de las contraseñas nuevas: bcrypt o ripemd160. Los hashes almacenados de cualquier algoritmo se siguen validando y, con bcrypt, los hashes RIPEMD-160 heredados se vuelven a hashear en el siguiente inicio de sesión correcto. Defina ripemd160 solo cuando el XML propio de la aplicación o sistemas externos comparen el hash almacenado (ope.l1_pas) y todavía no se puedan adaptar. Consulte la guía de migración a AWE 5. | bcrypt |
| awe.security.same-origin-enable | Habilita el mismo origen en las cabeceras http. Evita las peticiones de frames entre dominios. | true |
| awe.security.allowed-origin-patterns | Lista de rutas de origen permitidas separadas por comas. | * |
| awe.security.ldap.user-filter | Nombre de la propiedad de inicio de sesión del usuario Ldap. En entornos WINDOWS sAMAccountName={0}. En entornos UNIX uid={0} | sAMAccountName={0} |
| awe.security.ldap.url | URL del servidor Ldap. Establezca los valores de los servidores separados por comas cuando necesite configurar más de uno. | ldap://localhost:389 |
| awe.security.ldap.base-dn | Dominio base Ldap para la búsqueda. Valor por defecto vacío (Root Dn). | |
| awe.security.ldap.user-bind | Patrón de búsqueda del enlace (bind) del usuario Ldap. | |
| awe.security.ldap.password-bind | Contraseña de enlace (bind) de Ldap. | |
| awe.security.ldap.connect-timeout | Tiempo de espera de conexión Ldap en milisegundos. Establece la propiedad de entorno com.sun.jndi.ldap.connect.timeout. | 5000ms Duration |
| awe.security.ldap.read-timeout | Tiempo de espera de lectura Ldap en milisegundos. Establece la propiedad de entorno com.sun.jndi.ldap.read.timeout. | 5000ms Duration |
| awe.security.totp.enabled | Deshabilitar, habilitar o forzar el TOTP. | disabled |
| awe.security.totp.initial-screen | Pantalla inicial para comprobar el TOTP. | check-2fa |
| awe.security.totp.activate-screen | Pantalla inicial para forzar la activación del TOTP. | activate-2fa |
| awe.security.sso-enabled | Indicador para habilitar el flujo de inicio de sesión sso. Puede usar un servidor de autorización como KeyCloak u Okta | false |
| awe.security.sso.auto-provision-use | Indicador para habilitar el aprovisionamiento automático de usuarios en el proceso de autenticación oauth2. Crea un nuevo registro en la tabla ope con el usuario | true |
| awe.security.sso.user-name-attribute | Nombre del atributo que se obtiene de la información del token oauth2 en el proceso de aprovisionamiento de usuarios. | preferred_username |
| awe.security.sso.auto-launch | Cuando Auto Launch está habilitado, la página de inicio de sesión redirige automáticamente al usuario a la URL de autorización de OAuth para iniciar sesión con OAuth | false |
| awe.security.sso.filter-authority-prefix | Se utiliza para filtrar las autoridades concedidas en el proceso posterior a la autenticación. | |
| awe.security.sso.overwrite-profile-with-default-role | Cuando es false, el perfil de un usuario existente se mantiene tal cual si el claim del proveedor SSO no incluye ningún rol. Establézcalo en true para sobrescribirlo con el rol por defecto de la aplicación, como en las versiones anteriores a la 4.12.9. | false |
| awe.security.sso.multitenant.enabled | Habilita el sso multi-tenant. | false |
| awe.security.sso.multitenant.default-tenant | Establece el nombre del tenant por defecto cuando multi-tenant está habilitado. | default |
| awe.security.sso.enable-azure-button | Habilita el botón de Azure EntraId en la pantalla de inicio de sesión. | false |
| awe.security.sso.enable-google-button | Habilita el botón de iniciar sesión con Google en la pantalla de inicio de sesión. | false |
| awe.security.sso.enable-generic-sso-button | Habilita el botón de iniciar sesión con SSO en la pantalla de inicio de sesión. | false |
| awe.security.audit.enabled | Registra los eventos de seguridad (inicios y cierres de sesión, bloqueos, cambios de contraseña y de segundo factor, accesos denegados y tokens REST). Si se desactiva, ningún destino registra eventos y no se purga nada. Consulte Auditoría de seguridad. | true |
| awe.security.audit.anonymize-ip | Anonimiza la dirección del cliente de cada evento: pone a cero el último octeto de las direcciones IPv4 y todo lo que sigue a los primeros 48 bits de las direcciones IPv6. | false |
| awe.security.audit.database.enabled | Guarda los eventos en la tabla AweSecAudEvt. | true |
| awe.security.audit.database.retention-days | Días que se conserva un evento en la tabla AweSecAudEvt antes de que la purga lo borre. 0 conserva los eventos para siempre. | 365 |
| awe.security.audit.database.purge-cron | Expresión cron (formato de Spring, zona horaria del servidor) de la purga de los eventos caducados. | 0 0 3 * * * |
| awe.security.audit.log.enabled | Escribe cada evento como una línea JSON en el logger awe.security.audit (nivel INFO), para enviarlo a un SIEM. | true |
| awe.security.audit.metrics.enabled | Cuenta los eventos en el contador de Micrometer awe.security.audit.events (etiquetas type, outcome, channel y cause). Solo se aplica con el starter de observabilidad. | true |
| awe.security.lockout.max-attempts | Inicios de sesión locales fallidos consecutivos (contraseña incorrecta) tras los que se bloquea la cuenta. Un inicio de sesión correcto reinicia la cuenta de fallos, y un administrador desbloquea la cuenta desde la pantalla de usuarios. 0 desactiva el bloqueo automático. | 0 |
Propiedades numéricas de AWE
Estas son las propiedades de configuración numérica para los proyectos AWE. Tienen el prefijo awe.numeric.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.numeric.format | Separador de formato numérico para la entrada numérica. Valor por defecto NumericFormatType.EUR (eur). Formato numérico europeo ('.' como carácter de millares y ',' como carácter decimal). | eur |
| awe.numeric.round-type | Tipo de redondeo para las operaciones numéricas. Valor por defecto Half Up Symmetric (S). Véase RoundTypes para más información. | S RoundingType.HALF_UP_SYMMETRIC |
| awe.numeric.pattern-formatted | Formato numérico para el valor del patrón del campo. | ###,###.#### |
| awe.numeric.pattern-unformatted | Formato numérico para el valor del patrón del campo (sin formato, sin separadores de millares). | ######.#### |
| awe.numeric.min-value | Valor mínimo del componente numérico. | -9999999999.99 |
| awe.numeric.max-value | Valor máximo del componente numérico. | 9999999999.99 |
| awe.numeric.padding-with-zeros | Relleno con ceros para completar el formato del número en el componente numérico. | false |
| awe.numeric.decimal-numbers | Número de decimales del componente numérico. | 5 |
| awe.numeric.separator-thousand | Separador de millares del componente numérico. Valor por defecto: carácter de millares de NumericFormatType (awe.numeric.format) | . |
| awe.numeric.separator-decimal | Separador decimal del componente numérico. Valor por defecto: carácter decimal de NumericFormatType (awe.numeric.format) | , |
| awe.numeric.group-decimal | Controla la agrupación de dígitos: la colocación del separador de millares del componente numérico. | 3 |
| awe.numeric.currency-sign | Símbolo de moneda deseado para el componente numérico. | cadena vacía |
| awe.numeric.currency-place | Controla la colocación del símbolo de moneda del componente numérico. Valor por defecto s (sufijo a la derecha). Use p para el prefijo a la izquierda. | s |
| awe.numeric.empty-value | Controla el comportamiento de visualización de la entrada del componente numérico. | empty |
Propiedades de sesión de AWE
Estas son las propiedades de configuración de sesión para los proyectos AWE. Tienen el prefijo awe.session.
| Name | Descripción | Valor por defecto |
|---|---|---|
| awe.session.parameter | Mapa de parámetros inyectados en la sesión cuando arranca el contexto de la aplicación. Ej: awe.session.parameter.par1=QueryName | awe.session.parameter.module=ModNamByOpeSel awe.session.parameter.site=SitNamByOpeSel awe.session.parameter.database=DbsAlsBySitModSel |
Propiedades de correo electrónico de AWE
Estas son las propiedades de configuración del motor de correo electrónico para los proyectos AWE. Tienen el prefijo awe.mail.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.mail.enabled | Indicador para habilitar las funcionalidades de correo electrónico de awe. El valor por defecto es false. | false |
| awe.mail.host | Host del servidor de correo electrónico. | |
| awe.mail.port | Puerto del servidor de correo electrónico. | 25 |
| awe.mail.auth | Autenticación de correo electrónico. Indicador para especificar si se necesita autenticación. | false |
| awe.mail.user | Nombre de usuario de autenticación del servidor de correo electrónico. | |
| awe.mail.pass | Contraseña de autenticación del servidor de correo electrónico. | |
| awe.mail.debug | Ejecuta el correo electrónico en modo depuración. El valor por defecto es false. | false |
| awe.mail.ssl | Indicador para especificar el uso del protocolo SSL. | false |
| awe.mail.tls | Indicador para especificar el uso del protocolo TLS. | false |
| awe.mail.localhost | Nombre del servidor smtp local. | localhost |
Propiedades de Developer de AWE
Estas son las propiedades de configuración del módulo Developer para los proyectos AWE. Tienen el prefijo awe.developer.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.developer.path | Ruta de Developer. Se utiliza para gestionar los archivos de locales. | ${user.home}/awe-developer |
| awe.developer.path-file | Nombre del archivo de rutas. | path.properties |
| awe.developer.path-property | Nombre de la propiedad de ruta. | path.project |
| awe.developer.translation-service | Servicio de traducción. | my_memory |
| awe.developer.translation.mymemory.key | Clave de API de MyMemory. | 10ecdc1ed89ac3ebed3b |
| awe.developer.translation.mymemory.host | Host del servicio de traducción de MyMemory. | api.mymemory.translated.net |
| awe.developer.translation.mymemory.email | Correo electrónico de referencia del servicio de traducción. | awe@almis.com |
| awe.developer.translation.rapidapi.key | Clave de API de RapidAPI. | f20790a0d6msh98d1dad8f0e3da9p10eb19jsn671d6cab2ec5 |
| awe.developer.translation.rapidapi.host | Host del servicio de traducción de RapidAPI. | translated-mymemory---translation-memory.p.rapidapi.com |
| awe.developer.translation.rapidapi.email | Correo electrónico de referencia del servicio de traducción. | awe@almis.com |
Propiedades Rest de AWE
Estas son las propiedades de configuración del conector REST y del conector de microservicios para los proyectos AWE. Tienen el prefijo awe.rest.
| Nombre | Descripción | Valor predeterminado |
|---|---|---|
| awe.rest.client-enabled | Habilita la aplicación AWE como cliente Eureka. | false |
| awe.rest.connection-timeout | Tiempo de espera de conexión Rest en milisegundos. | 5s Duration |
| awe.rest.connection-request-timeout | Tiempo de espera de la petición de conexión en milisegundos. | 5s Duration |
| awe.rest.response-timeout | Tiempo de espera de la respuesta en milisegundos. | 5s Duration |
| awe.rest.services | Mapa con la información de los servicios Rest utilizados por el microservicio de AWE y el conector REST. Véanse estos ejemplos | |
| awe.rest.api.doc-title | Título de la información de Open API. | AWE Rest API |
| awe.rest.api.doc-description | Descripción de la información de Open API. | Rest API to access AWE services |
| awe.rest.api.doc-version | Versión de la información de Open API. | v1.0.0 |
| awe.rest.api.doc-contact-name | Nombre del contacto de Open API. | |
| awe.rest.api.doc-contact-url | URL del contacto de Open API. | |
| awe.rest.api.doc-contact-email | Correo electrónico del contacto de Open API. | |
| awe.rest.api.doc-license-name | Nombre de la licencia de Open API. | Apache 2.0 |
| awe.rest.api.doc-license-url | URL de la licencia de Open API. | https://www.apache.org/licenses/LICENSE-2.0.html |
| awe.rest.api.doc-terms-of-service-url | URL de los términos de servicio de Open API. | |
| awe.rest.api.doc-external-description | Descripción de la documentación externa de Open API. | |
| awe.rest.api.doc-external-url | URL de la documentación externa de Open API. | |
| awe.rest.api.jwt.authorization-header | Nombre de la cabecera de autenticación del módulo Rest de AWE | Authorization |
| awe.rest.api.jwt.prefix | Prefijo del token JWT. | Bearer |
| awe.rest.api.jwt.secret | Contraseña secreta JWT para firmar el token. | Valor de awe.security.master.key si está definida; si no, awe.security.master-key |
| awe.rest.api.jwt.issuer | Nombre del emisor JWT. | AWE ISSUER |
| awe.rest.api.jwt.expiration-time | Tiempo de validez del token JWT hasta que expira, en minutos. | 60m Duration |
| awe.rest.api.auth.mode | Modo de autenticación REST. Use local-jwt para JWT emitidos por AWE u oauth2-resource-server para tokens de acceso OAuth2/OIDC emitidos externamente. | local-jwt |
| awe.rest.api.oauth2-resource-server.jwt.issuer-uri | URI del emisor del proveedor utilizada para descubrir los metadatos y validar el claim iss del token de acceso. Obligatoria en el modo OAuth2 salvo que se configure jwk-set-uri. | |
| awe.rest.api.oauth2-resource-server.jwt.jwk-set-uri | URI del JWK Set opcional que sobrescribe la anterior. Úsela cuando el descubrimiento del emisor no esté disponible. Obligatoria en el modo OAuth2 salvo que se configure issuer-uri. | |
| awe.rest.api.oauth2-resource-server.jwt.audiences | Lista obligatoria de audiencias aceptadas del token de acceso. Los valores deben coincidir exactamente con el claim aud del token. | |
| awe.rest.api.oauth2-resource-server.principal.delegated-username-claims | Nombres de claims ordenados utilizados para construir el nombre de usuario de los tokens de usuario delegados. | preferred_username, upn, email, oid |
| awe.rest.api.oauth2-resource-server.principal.delegated-display-name-claims | Nombres de claims ordenados utilizados para construir el nombre visible de los tokens de usuario delegados. | name, preferred_username, email |
| awe.rest.api.oauth2-resource-server.principal.delegated-email-claims | Nombres de claims ordenados utilizados para construir el correo electrónico de los tokens de usuario delegados. | email, upn, preferred_username |
| awe.rest.api.oauth2-resource-server.principal.client-id-claims | Nombres de claims ordenados utilizados para identificar los tokens de cliente o aplicación. | azp, appid, client_id, clientId, sub |
| awe.rest.api.oauth2-resource-server.principal.client-display-name-claims | Nombres de claims ordenados utilizados para construir el nombre visible de los tokens de cliente o aplicación. | app_displayname, azp, appid, client_id, clientId |
| awe.rest.api.oauth2-resource-server.principal.client-principal-prefix | Prefijo añadido a los nombres de usuario sintéticos de los principales de cliente o aplicación. | client: |
| awe.rest.api.oauth2-resource-server.principal.profile-claim | Nombre de claim opcional utilizado para asignar el perfil de AWE. | |
| awe.rest.api.oauth2-resource-server.principal.default-profile | Perfil de AWE alternativo opcional cuando profile-claim no existe o está vacío. | |
| awe.rest.api.openapi.oauth2.authorization-url | Endpoint de autorización OAuth2 utilizado por el flujo Authorization Code de Swagger UI. | |
| awe.rest.api.openapi.oauth2.token-url | Endpoint de token OAuth2 utilizado por Swagger UI para intercambiar el código de autorización. | |
| awe.rest.api.openapi.oauth2.scopes | Scopes OAuth2 mostrados en Swagger UI. En .properties, encierre las claves de scope complejas entre corchetes y escape :, por ejemplo scopes.[api\://<api-client-id>/access]. | |
| awe.rest.api.openapi.oauth2.client-id | Id de cliente OAuth2 público de Swagger UI. No use un client secret en Swagger UI basado en navegador. | |
| awe.rest.api.openapi.oauth2.use-pkce | Habilita PKCE para el flujo Authorization Code. Recomendado para Swagger UI y clientes SPA. | true |
Ejemplos de definiciones de servicios Rest
################################################
# Microservices properties
################################################
awe.rest.services.clients-microservice.base-url=http://localhost:8081
# Microservice parameters
awe.rest.services.clients-microservice.parameters[0].name=database
awe.rest.services.clients-microservice.parameters[0].type=session
awe.rest.services.clients-microservice.parameters[1].name=username
awe.rest.services.clients-microservice.parameters[1].type=session
awe.rest.services.clients-microservice.parameters[2].name=currentDate
awe.rest.services.clients-microservice.parameters[2].type=session
awe.rest.services.clients-microservice.parameters[3].name=numPar
awe.rest.services.clients-microservice.parameters[3].value=3
# microservices.[service-name] to overwrite microservice base endpoint
awe.rest.services.other-service.name=other-service-bis
awe.rest.services.other-service.base-url=http://localhost:8082
################################################
# Rest services properties
################################################
awe.rest.services.local.base-url=http://localhost:18081
awe.rest.services.island.base-url=https://apis.is
awe.rest.services.postman.base-url=https://postman-echo.com
# Rest security
awe.rest.services.postman.authentication.type=basic
awe.rest.services.postman.authentication.username=postman
awe.rest.services.postman.authentication.password=password
Propiedades del planificador de AWE
Estas son las propiedades de configuración del módulo Scheduler para los proyectos AWE. Tienen el prefijo awe.scheduler.
| Name | Descripción | Valor por defecto |
|---|---|---|
| awe.scheduler.tasks-load-on-start | Indicador para cargar las tareas al arrancar la aplicación. | true |
| awe.scheduler.stored-executions | Número de ejecuciones a almacenar en el log. | 5 |
| awe.scheduler.report-email-from-value | Correo electrónico de los informes del planificador. | scheduler@almis.com |
| awe.scheduler.execution-log-path | Ruta del log de ejecución del planificador. | ${logging.file.path:${java.io.tmpdir}}/scheduler |
| awe.scheduler.execution-log-pattern | Patrón del log de ejecución del planificador. | %d{yyyy-MM-dd HH:mm:ss.SSS} -%5p : %m%n%wEx |
| awe.scheduler.execution-log-store | Almacén del log de ejecución: file o database. Véase Log de ejecución del planificador. | file |
| awe.scheduler.execution-log-max-lines | Almacén en base de datos: número máximo de líneas de log conservadas por ejecución (tamaño de la ventana del visor). | 1000 |
| awe.scheduler.execution-log-max-line-length | Almacén en base de datos: número máximo de caracteres conservados por línea de log. | 1000 |
| awe.scheduler.execution-log-queue-capacity | Almacén en base de datos: capacidad del búfer de líneas de log pendientes. | 10000 |
| awe.scheduler.execution-log-batch-size | Almacén en base de datos: líneas escritas en la base de datos por lote. | 200 |
| awe.scheduler.execution-log-flush-interval | Almacén en base de datos: frecuencia con la que se escriben las líneas pendientes. | 2s Duration |
| awe.scheduler.task-timeout | Tiempo de espera por defecto de las tareas del planificador, en segundos. | 1800s Duration |
| awe.scheduler.remote-enabled | Habilita el uso del planificador remoto. | false |
| awe.scheduler.remote-scheduler-url | URL base del planificador remoto. | http://localhost:8000/scheduler/api/v1 |
| awe.scheduler.scheduler-instance | Marca la instancia como nodo exclusivo del planificador. | false |
| awe.scheduler.remote-callback-url | URL base de callback del planificador remoto. | |
| awe.scheduler.remote-callback-secure-enabled | Exigir autenticación en las peticiones de callback. | true |
| awe.scheduler.remote-callback-user | Nombre de usuario del callback remoto. | |
| awe.scheduler.remote-callback-password | Contraseña del callback remoto. | |
| awe.scheduler.execution-log-callback-capture | Captura las trazas de las tareas remotas en el log de ejecución. Véase Trazas de ejecución remota. | true |
| awe.scheduler.task-pool.size | Tamaño del pool de tareas programadas. | 20 |
| awe.scheduler.task-pool.max-size | Tamaño máximo del pool de tareas del planificador. | 50 |
| awe.scheduler.task-pool.queue-size | Capacidad de la cola del pool de tareas del planificador. | 1000 |
| awe.scheduler.task-pool.termination | Finalización del pool de tareas del planificador. | 120s Duration |
Valor de la propiedad de codificación
Hay una forma de almacenar propiedades codificadas (como contraseñas) en un archivo de propiedades. Debe desplegar la aplicación y entrar en Settings -> Security access -> Encrypt util, rellenar el criterio de texto con la contraseña y pulsar el botón Encrypt. El campo Encrypted property es el valor de la contraseña codificada.
Una vez codificado, solo es necesario ponerlo en cualquiera de los archivos de propiedades y usarlo:
my.encoded.password=ENC(Pit1Q1bNt3uNQpZbldKbLg==)
ℹ️ La clave maestra utilizada para codificar las propiedades es la propiedad
awe.security.master-key, que es obligatoria y no tiene valor por defecto: defínala en su propio archivoapplication.propertieso en el entorno.
⚠️ El campo
Phrase keyde la pantallaEncrypt utilpermite generar las propiedades codificadas con otras contraseñas, pero no olvide que las propiedades codificadas con una frase clave y laawe.security.master-keydeben coincidir para poder decodificarse correctamente.
Propiedades Websocket de AWE
Estas son las propiedades de configuración de Websocket STOMP para los proyectos AWE. Tienen el prefijo awe.websocket.stomp.
| Name | Descripción | Valor por defecto |
|---|---|---|
| awe.websocket.stomp.enable-stomp-broker-relay | Habilita el relay de broker STOMP en lugar del broker simple. Cuando está habilitado, los mensajes se retransmiten a un broker de mensajes STOMP externo. | false |
| awe.websocket.stomp.relay-host | Host del relay del broker STOMP. El host al que conectarse para el relay del broker STOMP. | localhost |
| awe.websocket.stomp.relay-port | Puerto del relay del broker STOMP. El puerto al que conectarse para el relay del broker STOMP. | 61613 |
| awe.websocket.stomp.virtual-host | Host virtual del broker STOMP, utilizado para segregar aplicaciones que comparten el mismo broker. Cuando no se establece, el broker aplica su propio valor por defecto (el host del relay). | |
| awe.websocket.stomp.client-login | Login de cliente del broker STOMP. El login a usar al crear una conexión de cliente con el broker STOMP. | |
| awe.websocket.stomp.client-passscode | Contraseña de cliente del broker STOMP. El passcode a usar al crear una conexión de cliente con el broker STOMP. | |
| awe.websocket.stomp.system-login | Login de sistema del broker STOMP. El login a usar al crear una conexión de sistema con el broker STOMP. | |
| awe.websocket.stomp.system-passscode | Contraseña de sistema del broker STOMP. El passcode a usar al crear una conexión de sistema con el broker STOMP. | |
| awe.websocket.stomp.destination-prefixes | Prefijos de destino del broker de mensajes. Los prefijos que gestiona el broker de mensajes. | [/topic, /queue] |
Propiedades de observabilidad de AWE
Estas son las propiedades de configuración del starter de observabilidad (awe-observability-spring-boot-starter), que añade comprobaciones de salud, métricas y trazas. Tienen el prefijo awe.observability. Véase la guía de observabilidad.
| Name | Descripción | Valor por defecto |
|---|---|---|
| awe.observability.enabled | Habilita el starter de observabilidad (comprobaciones de salud, métricas y trazas). Póngala a false para desactivar todo lo que aporta sin quitar la dependencia. | true |
| awe.observability.health-timeout | Tiempo máximo que una comprobación de salud espera la respuesta de una conexión de base de datos o de cola antes de informar del conector como caído. | 2s Duration |
| awe.observability.max-tag-values | Número máximo de valores distintos de las etiquetas id y screen de cada métrica de AWE. Los valores que lo superan se informan como other, así un identificador falsificado o inesperado nunca añade series. | 1000 |
| awe.observability.usage.exports.enabled | Cuenta y mide el tiempo de las impresiones y exportaciones de las pantallas (temporizador awe.export, etiquetado por pantalla y formato). | true |
| awe.observability.usage.files.enabled | Cuenta los ficheros subidos y descargados y suma sus bytes (resumen awe.files, etiquetado por dirección). | true |
| awe.observability.usage.screens.enabled | Cuenta y mide el tiempo de las pantallas construidas para una opción de menú (temporizador awe.screen, etiquetado por opción y pantalla). | true |
| awe.observability.usage.users.enabled | Publica los usuarios conectados y las conexiones abiertas en este momento (indicadores awe.users.connected y awe.connections.active, por instancia). | true |
Sobreescritura de propiedades
Se puede sobrescribir cualquier propiedad de awe framework agregándolo a su archivo application.properties del proyecto.
Awe tiene el mismo orden de lectura de propiedades que Spring (1. Es la preferencia más alta).
- Propiedades de configuración global de Devtools en su directorio inicial (
~/.spring-boot-devtools.propertiescuando devtools está activo). - Anotaciones
@TestPropertySourceen sus pruebas. - Anotación
@SpringBootTest#propertiesen sus pruebas. - Argumentos de línea de comandos.
- Propiedades de
SPRING_APPLICATION_JSON(JSON embebido en una variable de entorno o en una propiedad de sistema) - Parámetros de inicio de
ServletConfig. - Parámetros de inicio de
ServletContext. - Atributos JNDI de
java:comp/env. - Propiedades de Sistema de Java (
System.getProperties()). - Variables de entorno del SO.
- Un
RandomValuePropertySourceque solo tiene propiedades enrandom.*. - Propiedades de aplicación específicas del perfil fuera de su jar empaquetado (
application-{profile}.propertiesy variantes YAML) - Propiedades de aplicación específicas del perfil empaquetadas dentro de su jar (
application-{profile}.propertiesy variantes YAML) - Propiedades de aplicación fuera de su jar empaquetado (
application.propertiesy variantes YAML). - Propiedades de aplicación empaquetadas dentro de su jar (
application.propertiesy variantes YAML). - Anotaciones
@PropertySourceen sus clases@Configuration. - Propiedades predeterminadas (especificadas usando
SpringApplication.setDefaultProperties).
Configuración externa
Si necesita cargar la configuración desde un archivo externo, debe considerar:
AWE como SpringApplication cargará propiedades de los archivos application.properties en las siguientes ubicaciones y los añadirá al entorno Environment:
Un subdirectorio /config del directorio actual.
- El directorio actual
- Un paquete /config en el classpath
- La raíz de classpath
También, puedes establecer spring.config.location propiedad de entorno el comando de ejecución.
java -jar myAweProject.jar --spring.config.location=file:/external_path/specific.properties
ℹ️ Puedes encontrar más información al respecto en la documentación oficial de Spring .