Plataforma heredada

Manejo de excepciones

Al validar una solicitud, si se encuentra una entrada no válida, se genera el mensaje de error SCUIRequestValidationException.

Puede alterar temporalmente este comportamiento predeterminado añadiendo el parámetro de contexto scui-suppress-validation-exception con el valor TRUE en el archivo web.xml ubicado en la carpeta <runtime_sandbox>/repository/eardata/smcfs/extn/ . Por ejemplo:

<context-param>
   <param-name>scui-suppress-validation-exception</param-name>
   <param-value>TRUE</param-value>
</context-param>

Al establecer el valor de este parámetro como TRUE, todas las excepciones de validación se añaden a una lista a la que se puede acceder mediante una ArrayList de la manera siguiente:

ArrayList<SCUIRequestValidationException>
SCUIWebValidationUtils.getValidaionErrorList(HttpServletRequest request)

También puede definir un manejador de excepciones global. Si alguna excepción de validación no se ha detectado y vuelve a SCUISafeRequestFilter, la solicitud se enviará al contenedor de servlet del manejador de errores global correspondiente.

Este manejador de excepciones global y el método de solicitud se pueden definir como parámetros de contexto en el archivo web.xml ubicado en la carpeta <runtime_sandbox>/repository/eardata/smcfs/extn/ . Por ejemplo:

<context-param>
   <param-name>scui-global-validation-exception-handler-path
   </param-name>
   <param-value><path_to_global_exception_handler></param-value>
</context-param>
<context-param>
   <param-name><scui-global-validation-exception-handler-method>
   </param-name>
   <param-value>FORWARD|INCLUDE|REDIRECT</param-value>
</context-param> 

Para las aplicaciones que se basan en la infraestructura de la interfaz de usuario web, la aplicación proporciona /jsps/datavalidationerror.jsp como manejador de excepciones predeterminado.

Para las aplicaciones que se basan en la infraestructura de la interfaz de usuario HTML, la aplicación proporciona /common/datavalidationerror.jsp como el manejador de excepciones predeterminado.

La infraestructura de la interfaz de usuario Web también ha añadido un resultado de acción de Struts "DATAVALIDATIONERROR", que se devolverá en caso de que la solicitud no sea válida. Puede definir este tipo de resultado y la ruta de acceso correspondiente (por ejemplo, /jsps/datavalidationerror.jsp) para estas acciones de Struts.

De forma predeterminada, el método del manejador de excepciones global se establece en FORWARD.

Para Sterling Store Engagement, la página del controlador de excepciones utilizada se datavalidationerror.jsp encuentra en /appcommon/core/jsps/repository/eardata/appcommon/30/war. Por lo tanto, el valor para el parámetro de contexto scui-global-validation-exception-handler-path se establece en /appcommon/core/jsps/datavalidationerror.jsp.