String formAction = (String) request.getAttribute(ActionResolver.RESOLVED_ACTION);
String formAction = StripesFilter.getConfiguration().getActionResolver() .getUrlBinding(ctx.getActionBean().getClass()); HttpServletRequest request = ctx.getActionBeanContext().getRequest();
    public static void fillInValidationErrors(ExecutionContext ctx) {        ActionBeanContext context = ctx.getActionBeanContext();        ValidationErrors errors = context.getValidationErrors();        HttpServletRequest request = context.getRequest();        if (errors.size() > 0) {            String formAction = (String) request.getAttribute(ActionResolver.RESOLVED_ACTION);            /** Since we don't pass form action down the stack, we add it to the errors here. */            for (Map.Entry<String, List<ValidationError>> entry : errors.entrySet()) {                String parameterName = entry.getKey();                List<ValidationError> listOfErrors = entry.getValue();                for (ValidationError error : listOfErrors) {                    error.setActionPath(formAction);                    // This is done to fill in parameter values for any errors the user                    // created and didn't add values to                    if (error.getFieldValue() == null) {                        error.setFieldValue(HtmlUtil.encode(request.getParameter(parameterName)));                    }                    else {                        error.setFieldValue(HtmlUtil.encode(error.getFieldValue()));                    }                }            }        }    }