💬 Preguntas frecuentes
Respuestas a las dudas y problemas más comunes sobre la administración de aplicaciones, menús, submenús, permisos y configuración de microfrontends en la plataforma de Alpura.
⚙️ Registro y Configuración General
¿Por qué es mandatorio que el nombre de la aplicación coincida con el Client ID de Keycloak?
El Shell (aplicación principal) realiza la autenticación contra Keycloak y utiliza el Client ID para consultar los roles y el menú dinámico del usuario a través de la API. Si los nombres no coinciden exactamente, el microservicio no podrá resolver la sesión y las opciones del menú no se mostrarán.
¿Para qué sirve el diagrama de árbol que se muestra a la derecha?
Funciona como una representación visual interactiva de la estructura de la aplicación. Te permite validar en tiempo real la jerarquía de:
- Aplicación
- Roles
- Permisos
- Menú raíz
- Submenús e hilos anidados
Es de gran utilidad para comprobar que los elementos estén correctamente relacionados antes de guardar o para evaluar el impacto visual de una eliminación.
🧭 Estructura de Navegación y Visibilidad
¿Por qué no existe la opción "Crear Menú" en la pestaña de Actualizar?
Cada aplicación cuenta con un único Menú raíz que funciona como contenedor principal. Este menú raíz se genera obligatoriamente durante el flujo inicial de Crear Aplicación. En la pestaña de actualización, únicamente es posible configurar y editar sus propiedades, no volver a crearlo.
¿Qué diferencia hay entre el tipo de menú "link" y "sub"?
- link: Abre directamente una ruta o vista de la aplicación. Requiere configurar los campos técnicos del microfrontend si carga un módulo remoto.
- sub: Se comporta únicamente como contenedor o agrupador que despliega un listado de submenús. No navega a ninguna vista por sí mismo.
¿Qué significa la opción de visibilidad "¿Su submenú será visible desde el menú?"?
- Sí (Visible): El enlace o submenú se renderizará de forma gráfica en la barra lateral de navegación para los usuarios autorizados.
- No (Oculto): El menú no aparecerá en el menú lateral, pero la ruta y el componente seguirán activos en la aplicación. Esto es útil para pantallas secundarias a las que se accede mediante botones o flujos internos (ej. formularios de edición o pantallas de detalle).
🔌 Microfrontends y Configuración Técnica
¿Qué campos son obligatorios para que un microfrontend cargue correctamente en el Shell?
Para que el Shell pueda inyectar dinámicamente el módulo federado (usando Webpack Module Federation), debes capturar con precisión:
- Remote Entry: La URL absoluta al archivo
remoteEntry.jsdel servidor o contenedor (ej.https://mfe.alpura.com/crm/remoteEntry.js). - Remote Name: El nombre del módulo remoto tal como está configurado en su webpack.
- Exposed Module: El nombre del módulo expuesto que se cargará (ej.
./Module). - Micro Frontend Type: Tecnología utilizada (Angular, React, etc.).
- Canal permitido: Si se habilitará para Web, Mobile, etc.
Cualquier error tipográfico en estos campos evitará que la pantalla cargue dentro del portal.
¿El path del menú debe llevar barra diagonal / al inicio?
No, el sistema ya lo asigna de forma automatica.
🔒 Roles y Protección de Accesos
¿Al ocultar un menú o submenú por permisos se protege la ruta de forma segura?
No. La configuración de permisos en la administración de menús sólo controla la visibilidad visual del elemento en la barra lateral de navegación.
¿Qué sucede con los submenús anidados si elimino el submenú padre?
El sistema aplica una eliminación en cascada. Si eliminas un submenú que contiene submenús anidados (hijos), todos los elementos anidados de ese nivel inferior se eliminarán automáticamente. Revisa con cuidado el diagrama de árbol antes de confirmar esta acción.
⚠️ Flujo de Creación Pendiente
¿Qué pasa si cambio de pestaña a "Actualizar" sin guardar una aplicación que estaba creando?
Si iniciaste el registro en Crear Aplicación pero no finalizaste el flujo, el sistema detectará el estado incompleto al intentar cambiar de pestaña y desplegará un modal de advertencia. Este modal te avisará del registro pendiente y te dará la opción de continuar para crear la aplicación directamente desde el apartado de actualización sin perder tus datos o restablecer la configuración previa.