Extensibilidad de la infraestructura de interfaz de usuario web para desarrolladores de aplicaciones
La extensibilidad le permite personalizar la interfaz de usuario de la instalación estándar de una aplicación mediante el entorno de trabajo Extensibility Workbench. Aunque los desarrolladores de aplicaciones utilizan en su mayoría el entorno de trabajo Designer Workbench, Extensibility Workbench resulta de utilidad para probar y simular el comportamiento de las herramientas de la infraestructura de interfaz de usuario web de la interfaz de usuario real.
Puede abrir una pantalla existente y activar las mismas herramientas de la interfaz de usuario que han utilizado los desarrolladores de la aplicación para crear la pantalla mediante Designer Workbench. Puede añadir controles (botones, etiquetas y columnas de cuadrícula), paneles, orígenes de datos y otros elementos. Con Extensibility Workbench puede personalizar y traducir una aplicación.
Visión general funcional
La extensibilidad le permite personalizar la instalación existente de una aplicación durante el tiempo de ejecución sin volver a compilar ni modificar el código fuente original.
- La extensibilidad en la interfaz de usuario ayuda a mostrar datos más relevantes y
organizados a un usuario final. También ayuda a mostrar una versión personalizada o traducida de una aplicación.
Gracias a la extensibilidad de la interfaz de usuario, podrá añadir nuevos widgets a una pantalla de la IU, ocultar widgets existentes, sustituir etiquetas de campos predeterminados, personalizar el tema de una aplicación y otras tareas relacionadas con la interfaz de usuario.
La extensibilidad de la interfaz de usuario se puede hacer de dos maneras:- Extensibilidad de sustitución, en la que se sustituyen por completo las pantallas estándar por pantallas nuevas. Para realizar esta tarea se utiliza el entorno de trabajo Designer Workbench.
- Extensibilidad diferencial, en la que se modifican partes de las pantallas estándar. Para realizar esta tarea se utiliza Extensibility Workbench.
Los cambios que un usuario puede realizar en un componente existente mediante la extensibilidad diferencial se limitan a un conjunto determinado de propiedades. Esto garantiza que no se puedan modificar las propiedades arbitrarias, que podrían provocar problemas de actualización.
Puede trabajar con la extensibilidad de sustitución en las capas siguientes: Struts, mashup, presentación y mashup XAPI. Con la extensibilidad diferencial, sólo puede trabajar con las capas de presentación y de mashup XAPI.
- La extensibilidad de programa de fondo le ayuda a realizar procesos y lógica empresarial personalizada. La lógica personalizada puede realizarse mediante la integración con otras aplicaciones, casos de uso modificados y otros requisitos especiales de una aplicación.
Mediante la extensibilidad de programa de fondo puede cambiar las API del lado del servidor para realizar lógica empresarial personalizada.
Visión general técnica
- La interfaz de usuario HTML se basa en la infraestructura JavaScript de Ext JS.
En la jerarquía de clases basada en Ext JS, varias bibliotecas JavaScript tienen su propia jerarquía basada en clases para crear modelos de objeto. La infraestructura de interfaz de usuario web utiliza la jerarquía de clases basada en Ext JS con esta finalidad.
- Cada pantalla se identifica con un identificador (className) que debe ser exclusivo en toda la aplicación.
- Cada componente de una pantalla se identifica con un identificador (sciId) que debe ser exclusivo dentro de la pantalla.
- Después de añadir un componente a la pantalla base, no se debe eliminar. Si se elimina el componente, y se había aplicado una extensión en relación con el componente eliminado, puede que la extensión no se muestre después de una actualización.
- Para obtener el archivo JSP ampliado, el mecanismo de extensibilidad añade extn a la ruta para obtener la ruta src (source u origen) completa del archivo de extensión.
- Las aplicaciones que consumen sólo la infraestructura de interfaz de usuario base proporcionarán el mecanismo de extensibilidad personalizado como se ha definido en el contrato de interfaz de la infraestructura de interfaz de usuario base. No habrá ninguna implementación predeterminada en la infraestructura de interfaz de usuario base.
- La clase de mashup ampliada realiza llamadas XAPI y otros tipos de llamadas. Si se va a ampliar un mashup XAPI, también se debe realizar una llamada a XAPI.
- Si el mecanismo de extensibilidad no se ofrece como programa de fondo de una aplicación, se producirá y se registrará un error.
- Si la implementación de mashup no se ofrece como programa de fondo de una aplicación, se producirá y se registrará un error.
- Añadir lógica empresarial (reglas y condiciones) a un mashup para que sea fácil de reutilizar y modificar.
- Utilizando el componente JavaScript del lado del cliente (Ext JS) para crear una interfaz de usuario rica y sensible (sin lógica empresarial).