Spring 异常 : MethodArgumentTypeMismatchException

java哥 阅读:89 2025-06-02 22:19:02 评论:0

我得到一个我不明白的异常。我有一个 Controller ,它给了我一个新闻对象,它出现在控制台中,所以获取实际的新闻对象不是问题,

@RequestMapping(value ="/viewonestatus/{id}") 
public ModelAndView viewOneStatus(@PathVariable("id") Long id) { 
 
    System.out.println("!!!!!! STATUSUPDATECONTROLLER: viewOneStatus : Empezamos con el ID del Anuncio: " + id); 
 
    StatusUpdate status = statusUpdateService.get(id); 
 
    ModelAndView modelAndView = new ModelAndView(); 
    System.out.println("!!!!!! STATUSUPDATECONTROLLER: viewOneStatus : Empezamos con el ID del Anuncio: " + status); 
 
    modelAndView.getModel().put("status", status); 
 
    modelAndView.setViewName("viewonestatus"); 
 
    return modelAndView; 
} 

....但是当尝试执行 JSP 时,它给了我以下错误,即使 JSP 几乎是空的,比如....

<%@ page language="java" contentType="text/html; charset=UTF-8" 
pageEncoding="UTF-8"%>  
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> 
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> 
 
hello world 
 
Exception: Exception: org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type [java.lang.String] to required type [java.lang.Long]; nested exception is java.lang.NumberFormatException: For input string: &#034;viewonestatus&#034; 
        Failed URL: http://localhost:8080/viewonestatus/viewonestatus 
        Exception message: Failed to convert value of type [java.lang.String] to required type [java.lang.Long]; nested exception is java.lang.NumberFormatException: For input string: &#034;viewonestatus&#034; 

非常感谢您的帮助

请您参考如下方法:

@RequestMapping(value ="/viewonestatus/{id}") 
public ModelAndView viewOneStatus(@PathVariable("id") Long id) 

在这里,您声明了一个名为“id”的路径变量,并将其类型声明为 Long。 接下来你调用 url:

http://localhost:8080/viewonestatus/viewonestatus  

第二个“viewonestatus”显然不是 Long 类型,这就是 spring 抛出异常的原因,因为它不能将“viewonestatus”转换为 Long

你的请求应该是这样的

http://localhost:8080/viewonestatus/12321 


标签:Spring
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号