Ejecutar el reproductor IEG en una pestaña requiere menos esfuerzo que ejecutarlo en un modal. Necesita que el enlace de 'apertura' apunte a ieg/Screening.do y pase en el executionID. Screening.do invoca el reproductor IEG. Los parámetros son los siguientes:
A continuación se proporciona un ejemplo de un UIM de resolución que abre el reproductor IEG en una pestaña:
<?xml version="1.0" encoding="UTF-8"?> <PAGE PAGE_ID="System_IEGResolver"> <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"); String executionIDParam = request.getParameter("executionIDParam"); String url = null; curam.omega3.request.RequestHandler rh = curam.omega3.request. RequestHandlerFactory.getRequestHandler(request); String context = request.getContextPath() + "/"; if (executionIDParam == null) { // Es necesario comprobar si hay errores de validación de script // antes de ejecutar el script. String contextWithUserPreferences = context + curam.omega3.user.UserPreferencesFactory .getUserPreferences( pageContext.getSession()).getLocale() + "/"; 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_listValidationErrorsForRunPage.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); url = context + "ieg/Screening.do?" + "executionID=" + executionID + "&" + rh.getSystemParameters(); } } else { url = context + "ieg/Screening.do?" + "executionID=" + executionIDParam + "&" + rh.getSystemParameters(); } // Redirigir a la página correcta. response.sendRedirect(response.encodeRedirectURL(url)); ]]> </JSP_SCRIPTLET> </PAGE>