`
gogomarine
  • 浏览: 100415 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

spring mvc -- 部分异常解决小记

阅读更多

有段时间没搞java web编程了,很多错误都比较低级,不应该出现,小记,提醒自己应该细心。

 

 

  1.  关于用spring upload文件的错误:

 

    写了测试页面,然后进行文件上传测试,忽然发现之前能够用curl调试成功的接口,居然报错了。错误信息如下:

    

2010-09-27 11:12:44,926 DEBUG [org.springframework.beans.BeanUtils] - No property editor [org.springframework.web.multipart.MultipartFileEditor] found for type org.springframework.web.multipart.MultipartFile according to 'Editor' suffix convention
2010-09-27 11:12:44,927 DEBUG [org.springframework.web.servlet.handler.SimpleMappingExceptionResolver] - Resolving exception from handler [com.roosher.web.mvc.SpaceController@15f6479]: org.springframework.beans.ConversionNotSupportedException: Failed to convert value of type 'java.lang.String' to required type 'org.springframework.web.multipart.MultipartFile'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [java.lang.String] to required type [org.springframework.web.multipart.MultipartFile]: no matching editors or conversion strategy found
2010-09-27 11:12:44,928 DEBUG [org.springframework.web.servlet.handler.SimpleMappingExceptionResolver] - Resolving to view 'uncaughtException' for exception of type [org.springframework.beans.ConversionNotSupportedException], based on exception mapping [.lang.Exception]
2010-09-27 11:12:44,928 DEBUG [org.springframework.web.servlet.handler.SimpleMappingExceptionResolver] - Exposing Exception as model attribute 'exception'
2010-09-27 11:12:44,932 DEBUG [org.springframework.web.servlet.DispatcherServlet] - Handler execution resulted in exception - forwarding to resolved error view: ModelAndView: reference to view with name 'uncaughtException'; model is {exception=org.springframework.beans.ConversionNotSupportedException: Failed to convert value of type 'java.lang.String' to required type 'org.springframework.web.multipart.MultipartFile'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [java.lang.String] to required type [org.springframework.web.multipart.MultipartFile]: no matching editors or conversion strategy found}
org.springframework.beans.ConversionNotSupportedException: Failed to convert value of type 'java.lang.String' to required type 'org.springframework.web.multipart.MultipartFile'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [java.lang.String] to required type [org.springframework.web.multipart.MultipartFile]: no matching editors or conversion strategy found

    主要错误就是

    

org.springframework.beans.ConversionNotSupportedException: Failed to convert value of type 'java.lang.String' to required type 'org.springframework.web.multipart.MultipartFile';

    怎么看都不知道错在哪里,看异常提示以为是编写PropertiesEditor的错误,或者跟Convert相关,但找寻代码没有看着痕迹。最后在调试页面看到低级的错误:

 

 

<form action="/roosher-backend/space/image" method="POST" enctype="application/x-www-form-urlencoded">   
   ......
</form>

     原来是enctype错了,应该是 enctype="multipart/form-data"

 


     2.   关于BindingResult
     Spring mvc2.5,3.0中,有关于 @ModelAttribute的注解,它可以帮你自动绑定表单的值,填充到被注解的属性当中。如 @ModelAttribute User user,该属性会在ModelMap中,添加以user为key的 User对象,然后绑定的时候会有一些绑定结果,就是BindingResult。但是BindingResult跟@ModelAttribute的相对位置比较重要,也就说跟方法参数,方法签名有关系。
BindingResult必须紧跟@ModelAttribute的后面,如

@Controller
public class Payer {
   
   @RequestMapping(...)
   public String pay(@ModelAttribute User user,BindingResult result) {
        
   }
}
 

如果是类似下面的情况就可能有"java.lang.IllegalStateException: Errors/BindingResult argument declared without preceding model attribute. Check your handler method signature!"抛出来,具体可以查看org.springframework.web.bind.annotation.support.HandlerMethodInvoker

@Controller
public class Payer {
   
   @RequestMapping(...)
   public String pay(@ModelAttribute User user,@RequestParam Hello hello,
	BindingResult result) {
        
   }
}
 

 

分享到:
评论

相关推荐

    sentinel-spring-webmvc-adapter-1.8.0-API文档-中文版.zip

    赠送jar包:sentinel-spring-webmvc-adapter-1.8.0.jar; 赠送原API文档:sentinel-spring-webmvc-adapter-1.8.0-javadoc.jar; 赠送源代码:sentinel-spring-webmvc-adapter-1.8.0-sources.jar; 赠送Maven依赖信息...

    sentinel-spring-webmvc-adapter-1.8.0-API文档-中英对照版.zip

    赠送jar包:sentinel-spring-webmvc-adapter-1.8.0.jar; 赠送原API文档:sentinel-spring-webmvc-adapter-1.8.0-javadoc.jar; 赠送源代码:sentinel-spring-webmvc-adapter-1.8.0-sources.jar; 赠送Maven依赖信息...

    springfox-spring-webmvc-3.0.0-API文档-中文版.zip

    赠送jar包:springfox-spring-webmvc-3.0.0.jar; 赠送原API文档:springfox-spring-webmvc-3.0.0-javadoc.jar; 赠送源代码:springfox-spring-webmvc-3.0.0-sources.jar; 赠送Maven依赖信息文件:springfox-...

    springfox-spring-webmvc-3.0.0-API文档-中英对照版.zip

    赠送jar包:springfox-spring-webmvc-3.0.0.jar; 赠送原API文档:springfox-spring-webmvc-3.0.0-javadoc.jar; 赠送源代码:springfox-spring-webmvc-3.0.0-sources.jar; 赠送Maven依赖信息文件:springfox-...

    spring-webmvc-5.2.15.RELEASE-API文档-中文版.zip

    赠送jar包:spring-webmvc-5.2.15.RELEASE.jar; 赠送原API文档:spring-webmvc-5.2.15.RELEASE-javadoc.jar; 赠送源代码:spring-webmvc-5.2.15.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-webmvc-...

    spring-webmvc-5.3.15-API文档-中文版.zip

    赠送jar包:spring-webmvc-5.3.15.jar; 赠送原API文档:spring-webmvc-5.3.15-javadoc.jar; 赠送源代码:spring-webmvc-5.3.15-sources.jar; 赠送Maven依赖信息文件:spring-webmvc-5.3.15.pom; 包含翻译后的API...

    spring-webmvc-portlet-3.2.7.RELEASE.jar

    spring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jar

    spring-webmvc-5.3.7-API文档-中文版.zip

    赠送jar包:spring-webmvc-5.3.7.jar; 赠送原API文档:spring-webmvc-5.3.7-javadoc.jar; 赠送源代码:spring-webmvc-5.3.7-sources.jar; 赠送Maven依赖信息文件:spring-webmvc-5.3.7.pom; 包含翻译后的API文档...

    开发工具 spring-webmvc-4.3.6.RELEASE

    开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-web...

    spring-webmvc-5.0.8.RELEASE-API文档-中文版.zip

    赠送jar包:spring-webmvc-5.0.8.RELEASE.jar; 赠送原API文档:spring-webmvc-5.0.8.RELEASE-javadoc.jar; 赠送源代码:spring-webmvc-5.0.8.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-webmvc-5.0.8....

    spring-webmvc-5.3.10-API文档-中文版.zip

    赠送jar包:spring-webmvc-5.3.10.jar; 赠送原API文档:spring-webmvc-5.3.10-javadoc.jar; 赠送源代码:spring-webmvc-5.3.10-sources.jar; 赠送Maven依赖信息文件:spring-webmvc-5.3.10.pom; 包含翻译后的API...

    spring-web-5.2.3.RELEASE和spring-webmvc-5.2.3.RELEASE

    Spring Web MVC模块(spring-webmvc-5.2.3.RELEASE.jar)是Spring框架中用于构建MVC(Model-View-Controller)架构的Web应用程序的核心部分。它为Web开发提供了一种强大且灵活的模型绑定、数据验证、异常处理和视图...

    spring-webmvc-struts.jar

    spring-webmvc-struts.jar对Struts和Spring整合时需要用到的包

    spring-webmvc-5.3.7-API文档-中英对照版.zip

    赠送jar包:spring-webmvc-5.3.7.jar; 赠送原API文档:spring-webmvc-5.3.7-javadoc.jar; 赠送源代码:spring-webmvc-5.3.7-sources.jar; 赠送Maven依赖信息文件:spring-webmvc-5.3.7.pom; 包含翻译后的API文档...

    spring-webmvc-4.3.7.RELEASE-sources.jar

    spring-webmvc-4.3.7.RELEASE-sources.jar spring-webmvc-4.3.7.RELEASE-sources.jar

    spring-webmvc-portlet-4.0.0.RELEASE.jar

    spring-webmvc-portlet-4.0.0.RELEASE.jar

    spring-mvc-showcase

    "spring-mvc-showcase"项目是Spring官网提供的一个实战示例,旨在帮助开发者深入理解和运用Spring MVC的关键特性。本文将围绕这个项目,详细介绍Spring MVC的核心概念、工作原理以及如何在实际开发中运用。 一、...

    spring-webmvc-5.0.8.RELEASE-API文档-中英对照版.zip

    赠送jar包:spring-webmvc-5.0.8.RELEASE.jar; 赠送原API文档:spring-webmvc-5.0.8.RELEASE-javadoc.jar; 赠送源代码:spring-webmvc-5.0.8.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-webmvc-5.0.8....

    spring-mvc-4.2.xsd.zip

    `spring-mvc-4.2.xsd`是Spring MVC 4.2版本的XML Schema定义文件。这个文件包含了所有在Spring MVC 4.2版本中可以使用的XML配置元素和属性,例如`&lt;mvc:annotation-driven&gt;`、`&lt;bean&gt;`、`&lt;context:component-scan&gt;`等...

    spring-webmvc-portlet-3.0.2.RELEASE

    spring-webmvc-portlet-3.0.2.RELEASE

Global site tag (gtag.js) - Google Analytics