Datos Generales de la Aplicación
Los datos generales de la aplicación se definen en el objeto appGeneralData y permiten especificar distintas características generales para la aplicación objetivo.
Esta es la estructura del objeto appGeneralData:
{
"appGeneralData": {
"appName": "nombre de la aplicación", ** REQUERIDA **
"appAuthor": "autor de la aplicación",
"appYear": año de la aplicación,
"appWeb": "nombre de la web del autor/compañía/aplicación",
"appWebUrl": "URL de la web del autor/compañía/aplicación",
"appPort": puerto de ejecución,
"appFilesUploadFolder": "nombre de la carpeta para la subida de archivos",
"appMainPackage": "paquete principal de la aplicación", ** REQUERIDA **
"appRoleUserUsername": "nombre de usuario para usurio con rol USER",
"appRoleUserPassword": "password para usuario con rol USER",
"appRoleAdminUsername": "nombre de usuario para usuario con rol ADMIN",
"appRoleAdminPassword": "password para usuario con rol ADMIN",
"appTxtLogin": "título de la pantalla de login",
"appTxtUsername": "etiqueta para el cuadro de texto de usuario en la pantalla de login",
"appTxtPassword": "etiqueta para el cuadro de texto de password en la pantalla de login",
"appTxtLoginButton": "texto para el botón aceptar en la pantalla de login",
"appTxtLogout": "texto para la opción de desconexión en el menú",
"appMsgLoggedOut": "mensaje indicando que la sesión se cerró",
"appMsgWrongLogin": "mensaje indicando que el login falló",
"appOptionsHeader": "cabecera de columna de opciones en listados",
"appTxtReturnTo": "texto del enlace volver",
"appTxtBack": "texto del enlace atrás",
"appTxtCancelButton": "texto para los botones Cancelar",
"appTxtOkButton": "texto para los botones Aceptar",
"appMainLogo": "nombre del archivo de imagen del logo principal",
"appMenuLogo": "nombre del archivo de imagen del logo del menú",
"appErrorLogo": "nombre del archivo de imagen para las pantallas de error",
"appNoImageLogo": "nombre del archivo de imagen del logo de no imagen"
},
...
}
Aunque son muchas las características que se pueden definir con el objeto appGeneralData, realmente solo dos de ellas son requeridas. Duende asignará valores por defecto a las características no incluidas.
Así pues, un objeto appGeneralData mínimo para una aplicación de Agenda Telefónica podría tener este aspecto:
{
"appGeneralData": {
"appName": "Agenda Telefónica",
"appMainPackage": "com.curiosoft.agendatfn"
},
...
}
Por supuesto los valores generados automáticamente por Duende para los elementos no proporcionados quizás no sean los deseados, por lo que en ese caso habría que especificarlos explícitamente. Una versión más detallada del objeto appGeneralData anterior podría ser la siguiente:
{
"appGeneralData": {
"appName": "Agenda Telefónica",
"appMainPackage": "com.curiosoft.agendatfn",
"appAuthor": "CurioSoft",
"appYear": 2023,
"appWeb": "curiosoft.es",
"appWebUrl": "https://www.curiosoft.es",
"appPort": 8000,
"appMsgWrongLogin": "Datos de acceso no válidos."
},
...
}
A continuación se describen cada uno de los elementos del objeto appGeneralData:
appName
Valor: Nombre de la Aplicación
Tipo de datos: cadena de texto
Requerido: SÍ
Este elemento permite indicar el nombre de la aplicación a generar. Este nombre aparecerá en la barra de menús de la aplicación.
Este elemento es requerido.
appAuthor
Valor: Autor de la Aplicación
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: cadena vacía
Este elemento permite indicar el nombre del autor o de la compañía que realiza la aplicación. Este nombre aparecerá en la parte superior derecha de la pantalla de logueo, así como en la parte inferior de todas las pantallas de la aplicación.
appYear
Valor: Año de la Aplicación
Tipo de datos: número entero
Requerido: No
Valor por Defecto: Año actual
Este elemento permite indicar el año de creación de la aplicación. Este valor aparecerá en la parte superior derecha de la pantalla de logueo, junto con el autor de la aplicación, y también en la parte inferior de todas las pantallas de la aplicación.
appWeb
Valor: Nombre de la Web asociada a la Aplicación
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: cadena vacía
Este elemento permite indicar el nombre de la página web asociada a la aplicación o al autor o compañía de ésta. Este valor aparecerá en la parte superior derecha de la pantalla de logueo así como en la parte inferior de todas las pantallas de la aplicación.
appWebUrl
Valor: URL de la Web asociada a la Aplicación
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: cadena vacía
Este elemento permite indicar la URL válida correspondiente a la web asociada a la aplicación o al autor o compañía de ésta. Si se indica este valor, entonces los datos de autoría de la aplicación (autor, año y web) se mostrarán como un enlace válido que permitirá acceder a la URL indicada.
appPort
Valor: Puerto asociado a la Aplicación
Tipo de datos: número entero
Requerido: No
Valor por Defecto: 8000
Este elemento permite indicar el puerto donde se ejecutará la aplicación a generar. Si no se proporciona este elemento, el puerto de la aplicación será el 8000. Así pues, para probar la aplicación en localhost habría que introducir en el navegador: http://localhost:8000/
appFilesUploadFolder
Valor: Nombre de la carpeta para la subida de archivos
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: upload
La aplicación generada puede requerir la subida de archivos, sobre todo imágenes asociadas a las distintas entidades. (Por ejemplo, en una aplicación de Agenda Telefónica podría ser interesante subir una foto de cada persona de la agenda) Estos archivos deben subirse a una carpeta del proyecto de la aplicación. Use este elemento si quiere darle un nombre concreto a dicha carpeta. En caso contrario, el nombre asignado a la carpeta será: upload.
Una vez generado el código fuente de la aplicación e integrado en el proyecto, recuerde crear dicha carpeta en él si éste requiere de subida de archivos. Vea Creación del Proyecto de la Aplicación para obtener más información.
appMainPackage
Valor: Paquete Principal de Java que se usará en el Proyecto de la Aplicación
Tipo de datos: cadena de texto
Requerido: SÍ
Una vez generado el código fuente de la aplicación, éste será integrado en un proyecto Java Spring Boot. Para ello será necesario indicar un paquete principal. Use este elemento para especificar el paquete principal que se usará en el proyecto de la aplicación.
El valor de este campo debe tener la forma correcta de un paquete Java, es decir, no use caracteres no válidos como acentos o caracteres comodín. Recuerde que un paquete Java suele escribirse en minúsculas y estar formado por varias cadenas separadas por punto.
Este elemento es requerido.
appRoleUserUsername
Valor: Nombre del usuario con rol USER
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: user
La aplicación generada usa Spring Security para crear dos usuarios en memoria. Uno de ellos tiene el rol USER, correspondiente a un usuario que solo tendrá permisos de lectura en la aplicación. A través de este elemento puede indicar el nombre de usuario para este usuario. Si no proporciona este elemento el nombre de este usuario será simplemente: user.
Para crear nuevos usuarios en memoria con el rol USER tendrá que modificar el código fuente generado. Revise el apartado Modificaciones en el Código Final
Esta versión de Duende CG no crea aplicaciones con usuarios en base de datos.
appRoleUserPassword
Valor: Password del usuario con rol USER
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: 1234
Use este elemento para indicar un password para el usuario con el rol USER. Si no indica este elemento el password asignado será 1234. Puede cambiar el password del usuario modificando el código fuente generado. Vea el apartado Modificaciones en el Código Final para obtener más información.
appRoleAdminUsername
Valor: Nombre del usuario con rol ADMIN
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: admin
La aplicación generada usa Spring Security para crear dos usuarios en memoria. Uno de ellos tiene el rol ADMIN, correspondiente a un usuario administrador que tiene todos los permisos asignados sobre la aplicación. A través de este elemento puede indicar el nombre de usuario para el administrador. Si no proporciona este elemento el nombre de este usuario será simplemente: admin.
Para crear nuevos usuarios administradores en memoria tendrá que modificar el código fuente generado. Revise el apartado Modificaciones en el Código Final
Esta versión de Duende CG no crea aplicaciones con usuarios en base de datos.
appRoleAdminPassword
Valor: Password del usuario con rol ADMIN
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: 1234
Use este elemento para indicar un password para el usuario con el rol ADMIN. Si no indica este elemento el password asignado será 1234. Puede cambiar el password del usuario modificando el código fuente generado. Vea el apartado Modificaciones en el Código Final para obtener más información.
appTxtLogin
Valor: Título de la pantalla de Login
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Nombre de la aplicación
Use este elemento para indicar un título para la pantalla de logueo, como por ejemplo "Acceso a la Aplicación", ó "Introduzca Credenciales". Si no proporciona este elemento aparecerá como título el nombre de la aplicación.
appTxtUsername
Valor: Etiqueta para el cuadro de texto nombre de usuario
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Username
Use este elemento para modificar la etiqueta que acompaña al cuadro de texto del nombre de usuario en la pantalla de logueo. Por ejemplo podría indicar el texto "Nombre de Usuario", o simplemente "Usuario". Si no proporciona este elemento la etiqueta será Username.
appTxtPassword
Valor: Etiqueta para el cuadro de texto password
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Password
Use este elemento para modificar la etiqueta que acompaña al cuadro de texto del password en la pantalla de logueo. Por ejemplo podría indicar el texto "Contraseña de Acceso", o simplemente "Contraseña". Si no proporciona este elemento la etiqueta será Password.
appTxtLoginButton
Valor: Texto para el botón Aceptar en la pantalla de Login
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Login
Use este elemento para modificar el texto del botón Aceptar en la pantalla de logueo. Por ejemplo podría indicar el texto "Acceder", "Enviar", "Entrar", etc. Si no proporciona este elemento la etiqueta será Login.
appTxtLogout
Valor: Texto para la opción de desconexión del menú
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Log out
Una vez dentro de la aplicación generada, ésta muestra en la parte derecha de la barra de menú una opción para finalizar la sesión. Use este elemento para cambiar el texto de dicha opción. Podría usar por ejemplo el texto "Desconectar", "Salir", "Exit", o cualquier otro que desee. Si no proporciona este elemento el texto de la opción será Log out.
appMsgLoggedOut
Valor: Mensaje informativo de finalización de sesión
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: You have logged out
Cuando el usuario finaliza la sesión en la aplicación generada, se muestra un mensaje en pantalla que puede ser modificado a través de este elemento. Por ejemplo, podría usar el texto "Fin de sesión", ó "El usuario se desconectó", ó cualquier otro texto que desee. Si no proporciona este elemento el valor por defecto para este mensaje será: You have logged out.
appMsgWrongLogin
Valor: Mensaje informando de un error de acceso a la aplicación
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Wrong username or password
En el caso de que el usuario introduzca un nombre de usuario o contraseña incorrecto en la pantalla de logueo de la aplicación generada, ésta mostrará un mensaje de error. Este mensaje puede ser configurado con este elemento. Use textos como por ejemplo "Datos de acceso incorrectos", o bien "El nombre de usuario o contraseña introducidos no existen". Si no proporciona este elemento el texto del mensaje será: Wrong username o password.
appOptionsHeader
Valor: Texto de cabecera en columna de opciones
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Options
Los listados de entidades en la aplicación generada se muestran en forma de tabla. La última columna de estas tablas está reservada a opciones aplicables a cada entidad (Ver, Modificar, Eliminar). Este elemento permite cambiar el texto de la cabecera de esta columna. Puede usar por ejemplo "Opciones", o "Acciones" como cabecera, u otro texto que desee. Si no proporciona este elemento el texto usado será Options.
appTxtReturnTo
Valor: Texto del enlace 'Volver'
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: cadena vacía
En la navegación por las distintas pantallas de la aplicación generada se muestran enlaces del tipo "Volver a (pantalla)". Puede configurar el texto que aparecerá a través de este elemento. Una configuración típica podría ser el texto "Volver a" o bien el texto "Mostrar". Por defecto el valor es la cadena vacía.
appTxtBack
Valor: Texto del enlace 'Atrás'
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Back
Cuando se muestra una imagen correspondiente a un campo, aparece un enlace en la parte superior izquierda de la pantalla para volver a la pantalla anterior. Este elemento permite configurar el texto de dicho enlace. Una configuración simple podría ser asignar el texto "Atrás", "Anterior" o "Volver".
appTxtCancelButton
Valor: Texto de los botones Cancelar
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Cancel
Use este elemento para decidir el texto que aparecerá en los botones Cancelar de la aplicación generada. Si no proporciona este elemento el texto usado será Cancel.
appTxtOkButton
Valor: Texto de los botones Aceptar
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: Ok
Use este elemento para decidir el texto que aparecerá en los botones Aceptar de la aplicación generada. Si no proporciona este elemento el texto usado será Ok.
appMainLogo
Valor: Nombre del fichero de imagen del logo principal
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: app_main_logo.png
La aplicación generada por Duende incluye por defecto un logo principal genérico que aparece en la pantalla de logueo de la aplicación. El archivo de imagen de este logo es: app_main_logo.png. Si quiere incluir su propio logo entonces use este elemento para especificar el nombre de archivo de imagen de su logo principal.
Vea Añadiendo el Código Generado al Proyecto para obtener más información.
appMenuLogo
Valor: Nombre del fichero de imagen del logo del menú
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: app_menu_logo.png
La aplicación generada por Duende incluye por defecto un logo en la barra de menú, junto al nombre de la aplicación. El archivo de imagen de este logo es: app_menu_logo.png. Si quiere incluir su propio logo entonces use este elemento para especificar el nombre de archivo de imagen de su logo de menú.
Vea Añadiendo el Código Generado al Proyecto para obtener más información.
appErrorLogo
Valor: Nombre del fichero de imagen del logo de la pantalla de error
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: app_error_logo.png
La aplicación generada por Duende incluye por defecto un logo que aparece en las pantallas de errores 400 y 500. El archivo de imagen de este logo es: app_error_logo.png. Si quiere incluir su propio logo para estas pantallas use este elemento para especificar el nombre de archivo de imagen de su logo de pantalla de error.
Vea Añadiendo el Código Generado al Proyecto para obtener más información.
appNoImageLogo
Valor: Nombre del fichero de imagen del logo "no imagen"
Tipo de datos: cadena de texto
Requerido: No
Valor por Defecto: app_no_image_logo.png
Cuando la aplicación generada gestiona entidades con imágenes, es posible que en algunas ocasiones no se proporcionen imágenes para las entidades. En este caso Duende proporciona una imagen neutra que indica la no existencia de imagen para dicha entidad. El archivo de imagen de este logo es app_no_image_logo.png. Si quiere incluir su propio logo de "no imagen" use este elemento para especificar dicho archivo.
Vea Añadiendo el Código Generado al Proyecto para obtener más información.