java - 如何将 Spring Controller /模型中的错误传递到 View 文件

标签 java spring jsp spring-mvc

如何将错误从使用 Spring MVC 实现的 Controller 传递到 View 文件?这些错误不是形式错误。只是业务逻辑错误,将显示在“JSP” View 的 div 内。

这是我的 Controller 操作:

@RequestMapping(method = RequestMethod.POST)
public String processLoginForm(HttpServletRequest request, LoginForm loginForm, 
BindingResult result, @SuppressWarnings("rawtypes") Map model) 
{
    loginForm = (LoginForm) model.get("loginForm");

    String gotoURL = request.getParameter("gotoURL");

    if (gotoURL == null || gotoURL == "") 
    {
        String errorMessage = "No Redirect URL Specified"; 
        return "loginerror";//loginerror is the view file I want to pass my error to.
    }
    model.put("loginForm", loginForm);
    return "loginsuccess";
}

谢谢

最佳答案

更改您的方法签名:

public String processLoginForm(HttpServletRequest request, LoginForm loginForm,
                 BindingResult result, ModelMap model)

您可以将错误消息放在 ModelMap 中并将其转发到登录错误页面。

if (gotoURL == null || "".equals(gotoURL)) 
{
    final String errorMessage = "No Redirect URL Specified"; 
    modelMap.addAttribute("errorMessage ", errorMessage);
    return "loginerror";//loginerror is the view file I want to pass my error to.
}

您可以使用 EL 在 div 中获取该内容。

<div>${errorMessage}</div>

关于java - 如何将 Spring Controller /模型中的错误传递到 View 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17951668/

相关文章:

java - JTable 值被覆盖

java - JMS中什么是队列

java - 如何获取Hibernate Query的ResultSet中的浮点值?

java - 使用 jSTL 的 sql 查询的执行时间

java 8 如何仅从 SummaryStatistics 返回总和和计数值

java - 查找3个日期中最早的日期

spring - 模拟 Keycloak token 以测试 Spring Controller

java - 防止 gradle.properties 扩展

java - req.getParameter 返回值错误的字符编码

java - 使用 IntelliJ 和 Struts 2 的目录层次结构