Apertura del reproductor IEG en un diálogo modal

Para abrir el reproductor IEG en un diálogo modal, abra Screening.do, en el modal, pasando los parámetros de sistema y executionID, utilizando un UIM de resolución. Para realizar este proceso, se proporciona System_IEGResolverModal.uim listo para utilizarse:

<PAGE PAGE_ID="System_IEGResolverModal">
          <JSP_SCRIPTLET>
    <![CDATA[
          
      String scriptID = request.getParameter("scriptID");
      String scriptType = request.getParameter("scriptType");
      String scriptVersion = 
        request.getParameter("scriptVersion");
      String schemaName = request.getParameter("schemaName");
      String name = request.getParameter("name");      
            
      // Es necesario comprobar si hay errores de validación de script
      // antes de ejecutar el script.
      curam.omega3.request.RequestHandler 
        rh = curam.omega3.request.
          RequestHandlerFactory.getRequestHandler(request);
      
      String context = request.getContextPath() + "/";
      String contextWithUserPreferences = context +
       curam.omega3.user.UserPreferencesFactory
          .getUserPreferences(
              pageContext.getSession()).getLocale() + "/";
             
      String url = null;
              
      curam.interfaces.IEGScriptAdminPkg.
        IEGScriptAdmin_checkForScriptErrors_TH
            iegScriptAdminCheckForErrors
          = new curam.interfaces.IEGScriptAdminPkg.
            IEGScriptAdmin_checkForScriptErrors_TH();
           
      iegScriptAdminCheckForErrors.setFieldValue(
        iegScriptAdminCheckForErrors.key$scriptID_idx,
            scriptID);
      iegScriptAdminCheckForErrors.setFieldValue(
        iegScriptAdminCheckForErrors.key$scriptType_idx,
            scriptType);
      iegScriptAdminCheckForErrors.setFieldValue(
        iegScriptAdminCheckForErrors.key$scriptVersion_idx,
            scriptVersion);
      iegScriptAdminCheckForErrors.setFieldValue(
        iegScriptAdminCheckForErrors.key$schemaName_idx,
            schemaName);        
      //Llamar al método.
      iegScriptAdminCheckForErrors.callServer();
            
      String errorsPresentInScript = 
         iegScriptAdminCheckForErrors.getFieldValue(
           iegScriptAdminCheckForErrors.result$errorsExist_idx);
      boolean errorsPresent =
          Boolean.valueOf(errorsPresentInScript).
              booleanValue();
                
      if (errorsPresent) {
            
        // Si hay errores, redirigir a la
        // página de errores de validación.
        String redirectTo = contextWithUserPreferences
          + "System_listValidationErrorsForModalPage.do"
          + "?name=" + name + "&scriptID=" + scriptID
                  + "&scriptType=" + scriptType 
          + "&scriptVersion=" + scriptVersion
          + "&schemaName=" + schemaName;
        url = redirectTo + "&&" + rh.getSystemParameters();          
         
      } else {
             
        // Llamar al método de ejecución de script y redirigirlo
        // al reproductor IEG.
        curam.interfaces.IEGScriptAdminPkg.
          IEGScriptAdmin_runScript_TH iegScriptAdminRunScript
            = new curam.interfaces.IEGScriptAdminPkg.
              IEGScriptAdmin_runScript_TH();
           
        iegScriptAdminRunScript.setFieldValue(
          iegScriptAdminRunScript.key$dtls$scriptID_idx,
              scriptID);
              iegScriptAdminRunScript.setFieldValue(
          iegScriptAdminRunScript.key$dtls$scriptType_idx, 
              scriptType);
        iegScriptAdminRunScript.setFieldValue(
          iegScriptAdminRunScript.key$dtls$scriptVersion_idx,
              scriptVersion);
        iegScriptAdminRunScript.setFieldValue(
          iegScriptAdminRunScript.key$schemaName_idx,
              schemaName);        
        //Llamar al método.
        iegScriptAdminRunScript.callServer();
              
        String executionID = 
            iegScriptAdminRunScript.getFieldValue(
          iegScriptAdminRunScript.result$executionID_idx);
        executionID = executionID.replaceAll(",", "");
              
        url = context + "ieg/Screening.do?" 
              + "executionID=" + executionID
              + "&" + rh.getSystemParameters();        
      }
            
      // Redirigir a la página correcta.
      response.sendRedirect(
          response.encodeRedirectURL(url));
    ]]>
  </JSP_SCRIPTLET>
</PAGE>