Implementação de extensões criadas pelo workbench de extensibilidade da estrutura da interface do usuário da Web usando o arquivo do construtor aJavaScript

É possível usar um arquivo do Construtor JavaScript para implementar extensões diferenciadas criadas usando o Extensibility Workbench Não é possível usar este procedimento para implementar extensões substitutas criadas usando o Designer Workbench.

Sobre esta tarefa

Um JSB poderá ser usado se a tela base for ativada por meio de um JSB ou por meio de um JSB que usa uma biblioteca JavaScript para renderizar as telas

Nota: Caminhos do arquivo UNIX/Linux são usados no procedimento a seguir.

Procedimento

  1. Instale o aplicativo e construa um arquivo WAR para ele.
    1. Implemente o arquivo WAR no servidor no formato explodido.
    2. Inicie o servidor de aplicativos passando o argumento a seguir:
      -Dwufdevmode=true
  2. Certifique-se de que as mudanças feitas usando o Extensibility Workbench tenham todos os arquivos Java™ gerados e salvos
  3. Na pasta INSTALL_DIR/extensions de seu diretório de instalação, crie o seguinte subdiretório:

    nome do pacote de aplicativos/páginas da Web.

  4. No subdiretório webpages, replique a estrutura de diretório da tela que você deseja estender (relativa à sua implementação) e copie em todos os arquivos de script gerados pelo a Extensibility Workbench.

    Por exemplo, se você estender a tela Manage Flight Route (que usa o caminho de arquivo application package name/flightRoute ), copiará todos os arquivos Java da extensão para o diretório INSTALL_DIR/extensions/applicationpackage name/webpages/applicationpackage name/flightRoute.

  5. Crie um novo arquivo JSB na mesma pasta para ativar estes arquivos recém-gerados. Os arquivos ExtensionJSFile_overlays.js devem ser incluídos antes dos arquivos ExtensionJSFile.js correspondentes. É possível usar o modelo JSB do Code Template Generator para criar o código deste arquivo. Será necessário colar o código no novo arquivo.
    Código de amostra para JSB:
    ?xml version="1.0" encoding="utf-8"? 
    project name="scuiIDE" 
                author="Your Company" 
        target name="flight_route" 
    !-- The name attribute in target is used to uniquely identify 
    this JSB in the application. It serves as its identifier.-- 
                file="/extn/stk/flightRoute/test-all.js"
                loadAfter="flightService" 
    !-- The loadAfter attribute in target is used to specify the 
    javascript library after which the current JSB should be rendered.--
                allowDynamicLoad="true" 
                debug="True" 
                shorthand="False"
                shorthand-list="" 
            include name="/extn/stk/flightRoute/test_overlays.js"/ 
            include name="/extn/stk/flightRoute/test.js"/ 
        /target
    /project
    
  6. Crie um novo servlet para registrar o novo arquivo JSB. A pasta extn deve ser prefixada para as chamadas LoadJSLibraryXml e loadIncrementalMashupExtnXml.
    Código de amostra para criar o servlet:
    package jsbCreator; 
    import javax.servlet.ServletConfig; 
    import javax.servlet.ServletException; 
    import javax.servlet.http.HttpServlet; 
    import
    com.sterlingcommerce.ui.web.framework.helpers.SCUIJSLibraryHelper;
    import
    com.sterlingcommerce.ui.web.framework.helpers.SCUIMashupHelper;
    public class CreateServlet extends HttpServlet { 
            private static final long serialVersionUID = 
    4693417985837892469L; 
            public synchronized void init(final ServletConfig config) 
    throws ServletException { 
                    //loads the JSB specified at the path
                    SCUIJSLibraryHelper.loadJSLibraryXml
    ("extn/stk/flightRoute/test.jsb", config.getServletContext()); 
                    //loads the mashup XML specified at the path
                    SCUIMashupHelper.loadIncrementalMashupExtnXml
    ("/extn/stk/flightRoute/test_mashup.xml", config.getServletContext()); 
            } 
    }
    
  7. Empacote o servlet em um arquivo jar.
  8. Atualize o arquivo web.xml com suas customizações.
  9. Reative o aplicativo para exibir as mudanças estendidas.

    As mudanças aparecerão sobrepostas na tela de base.