Despliegue de extensiones creadas por el entorno de trabajo de extensibilidad de la infraestructura de interfaz de usuario web y el entorno de trabajo de diseñador utilizando una página de servidor Java

Puede desplegar extensiones creadas por la página Extensibility de la infraestructura de interfaz de usuario web y Designer Workbench Java™ Server.

Acerca de esta tarea

Realice lo siguiente para utilizar una página Servidor Java (JSP) para desplegar extensiones diferenciales (modificadas con Extensibility Workbench) o alterar temporalmente extensiones (creadas utilizando Designer Workbench):

Nota: Las vías de acceso de archivo UNIX/Linux se utilizan en el procedimiento siguiente.

Procedimiento

  1. Instale la aplicación y cree un archivo WAR.
    1. Despliegue el archivo WAR en el servidor en el formato expandido.
    2. Una vez finalizado el despliegue, inicie el servidor de aplicaciones.
  2. Asegúrese de que los cambios realizados utilizando Extensibility Workbench o la nueva pantalla creada utilizando Designer Workbench tengan todos los archivos JSON y JavaScript relevantes generados y guardados.
  3. En la carpeta <DIR_INSTALACIÓN> /extensions, cree el subdirectorio siguiente:

    <nombre paquete aplicación> /webpages

  4. En el subdirectorio webpages, replique la estructura de directorios de la pantalla que desea ampliar (en relación con el despliegue) y copie en él todos los archivos de script que genera el entorno de trabajo.

    Por ejemplo, si amplía la pantalla Gestionar ruta de vuelo (que utiliza la ruta de archivo < nombre del paquete de aplicación >/flightRoute), deberá copiar todos los archivos de script de extensión en el directorio < DIRECTORIO_DE_INSTALACIÓN >/extensions/< nombre del paquete de aplicación >/webpages/<application package name>/flightRoute.

  5. Cree un archivo JSP nuevo con el mismo nombre que el archivo JSP base para iniciar estos archivos recién generados en la misma carpeta.
    Código de ejemplo del JSP original:
    <%@ taglib uri="/WEB-INF/scui.tld" prefix="scuitag" %>
    <jsp:include page="/stk/include.jsp">
        <jsp:param name="title" value="manage flight route" />
    </jsp:include>
    <script>
        Ext.ns("sc.stk");
        sc.stk.fn = function() {
            var fr = new sc.stk.flightRoute();
            sc.plat.ScreenTitle.setText(fr.Header, null, "sc-panel-belowmenu-text");
            sc.plat.ScreenTitle.setText(fr.Header, null, "sc-panel-belowmenu-desc");
            fr.render("mainBodyPanel");
        }
    <scuitag:includeJS
    name="['/stk/flightRoute/flightRouteList_config.js','/stk/flightRoute/flightRouteList.js',
    '/stk/flightRoute/flightRouteList_bundle.js']"
    callBack="sc.stk.fn"/>
    </script>
    <jsp:include page="/stk/footer.jsp">
    
    Código de ejemplo del nuevo JSP (extensibilidad diferencial):
    <%@ taglib uri="/WEB-INF/scui.tld" prefix="scuitag" %>
    <jsp:include page="/stk/include.jsp">
        <jsp:param name="title" value="manage flight route" />
    </jsp:include>
    <script>
        Ext.ns("sc.stk");
        sc.stk.fn = function() {
            var fr = new sc.stk.flightRoute();
            sc.plat.ScreenTitle.setText(fr.Header, null, "sc-panel-belowmenu-text");
            sc.plat.ScreenTitle.setDescription(fr.Header, null, "sc-panel-belowmenu-desc");
            fr.render("mainBodyPanel");
        }
    <scuitag:includeJS
    name="['/stk/flightRoute/flightRouteList_config.js','/stk/flightRoute/flightRouteList.js',
    '/stk/flightRoute/flightRouteList_bundle.js','/stk/flightRoute/test_overlays.js'
    ,'/stk/flightRoute/test.js']"
    callBack="sc.stk.fn"/>
    //The new JSP also includes the newly generated files: test_overlays.js and test.js
    </script>
    <jsp:include page="/stk/footer.jsp">
    
    Código de ejemplo del nuevo JSP (extensibilidad de sustitución):
    <%@ taglib uri="/WEB-INF/scui.tld" prefix="scuitag" %>
    <jsp:include page="/stk/include.jsp">
        <jsp:param name="title" value="Custom Screen" />
    </jsp:include>
    <script>
        Ext.ns("sc.stk");
        sc.stk.fn = function() {
            var fr = new sc.stk.flightRoute();
    /*
    sc.extn.CustomScreen is the className for the new screen.  It is available
    as a property for a screen in the designer and defaulted to
    sc.module.ClassName.  The user can change it.
    */
            sc.plat.ScreenTitle.setText(fr.Header, null, "sc-panel-belowmenu-text");
    /*
    Here, the setText(arg1, arg2, arg3) method has been used to set arg1 as
    title for a page as arg3="sc-panel-belowmenu-text".  Here, a bundle entry in
    the file: newScreen_bundle.js corresponding to Header would be picked up.
    */
            sc.plat.ScreenTitle.setDescription(" ", null, "sc-panel-belowmenu-desc");
            fr.render("mainBodyPanel");
        };
    <scuitag:includeJS
    name="['/extn/stk/flightRoute/newScreen_config.js', 
    '/extn/stk/flightRoute/newScreen.js', '/stk/flightRoute/newScreen_bundle.js']"
    callBack="sc.stk.fn"/>
    //This JSP includes the files generated through the designer:
    newScreen_config.js, newScreen.js and the localization file:
    newScreen_bundle.js
    </script>
    <jsp:include page="/stk/footer.jsp">
    
  6. Vuelva a crear el archivo WAR.

    El contenido del directorio <DIR_INSTALACIÓN> /extensions/ < nombre de paquete de aplicación> /webpages se copia en el directorio siguiente:

    <DIR_INSTALACIÓN> /external_deployments/< nombre paquete aplicación>/extn

    Esta estructura de directorios sólo existe si se crea un archivo WAR y, a continuación, se explota en el mismo directorio <DIR_INSTALACIÓN> /external_deployments.

    Cualquier archivo JSP dentro de este directorio que tenga el mismo nombre y la misma estructura de directorios relativa que el JSP base sustituirá el archivo JSP estándar.

  7. Reinicie la aplicación para visualizar los cambios ampliados.