Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Spring中将bindingResult对象传递给另一个请求URI_Java_Spring Mvc_Spring Boot - Fatal编程技术网

Java 如何在Spring中将bindingResult对象传递给另一个请求URI

Java 如何在Spring中将bindingResult对象传递给另一个请求URI,java,spring-mvc,spring-boot,Java,Spring Mvc,Spring Boot,在PRINT_登录请求URI中,我将错误绑定到bindingResult对象,我需要将其传递到另一个请求URI(VERIFY_帐户),在那里我可以检查错误并完成我的工作 @RequestMapping(PRINT_LOGIN) public String printLogin(Map<String, Object> model, @Valid PrintLoginForm printLoginForm, BindingResult bindingResult, HttpSe

在PRINT_登录请求URI中,我将错误绑定到bindingResult对象,我需要将其传递到另一个请求URI(VERIFY_帐户),在那里我可以检查错误并完成我的工作

@RequestMapping(PRINT_LOGIN)
public String printLogin(Map<String, Object> model, @Valid PrintLoginForm printLoginForm, 
    BindingResult bindingResult, HttpServletRequest request) throws IOException {
    String accountNum = printLoginForm.getAccountNumber();
    String zipCode = printLoginForm.getZipCode();
    if (StringUtils.isNotBlank(accountNum) && StringUtils.isNotBlank(zipCode)) {
        // valid
    } else { // Invalid
        bindingResult.reject("ERROR_INVALID_ACCOUNTNUMBER");
        // How to pass this bindingResult to the below URI ? 
        return createRedirectUri(VERIFY_ACCOUNT);
    }
    return VIEW_ACCOUNT_INDENTIFICATION;
}

@RequestMapping(VERIFY_ACCOUNT)
public String verifyAccount(Map<String, Object> model, HttpServletRequest request) {
    //How to get bindingResult object from the above request ? 
    return VIEW_VERIFY_ACCOUNT;
}
@RequestMapping(打印登录)
公共字符串printLogin(映射模型,@Valid printloginfo printloginfo,
BindingResult(BindingResult,HttpServletRequest请求)引发IOException{
字符串accountNum=printloginfo.getAccountNumber();
字符串zipCode=printloginfo.getZipCode();
if(StringUtils.isNotBlank(accountNum)和&StringUtils.isNotBlank(zipCode)){
//有效的
}else{//无效
bindingResult.reject(“错误\无效\帐号”);
//如何将此bindingResult传递到下面的URI?
返回createRedirectUri(验证_帐户);
}
返回视图\帐户\标识;
}
@请求映射(验证\u帐户)
公共字符串验证帐户(映射模型,HttpServletRequest){
//如何从上述请求中获取bindingResult对象?
返回查看\验证\帐户;
}

你没有。为什么要这样做呢。我也不明白你的逻辑,你是在验证表单,还是在手动验证模型?基本上,您要做两次相同的事情…实际上在这个if条件中,另一种类型的验证服务将被调用if(StringUtils.isNotBlank(accountNum)和&StringUtils.isNotBlank(zipCode)){//验证服务将验证输入的值。然后将有效或无效更新为绑定结果。现在,此绑定结果应传递给重定向请求(验证帐户)}您没有传递绑定结果。但您的验证逻辑仍然很奇怪,并且imho重复。您应该从执行验证的方法中指定要渲染的视图。您可以尝试将其破解到flash属性中,但通常情况下,您不应该使用它。我在printLogin方法中有常见的逻辑,但要求不同ts将来访问它。在这种情况下,我应该在请求的方法视图中呈现我的模型。例如:如果req1出现错误-相同的方法视图呈现&如果req2出现错误-应该呈现不同的方法视图,因此我应该传递什么错误发生的rite?确定视图的逻辑应该在单个方法中。Y如果你需要知道你的设计是否有缺陷,你不需要通过请求将结果传递给另一个方法。你应该根据模型中的信息呈现错误消息,你不需要单独的方法。