Skip to content

MultipartFile is Null in @ModelAttribute with Spring Boot 3.3.4 but Works in 3.2.4 #33791

@kkong101

Description

@kkong101

Title:
MultipartFile is Null in @ModelAttribute with Spring Boot 3.3.4 but Works in 3.2.4

Description:

When upgrading from Spring Boot version 3.2.4 to 3.3.4, the MultipartFile parameter in the controller method becomes null. This issue does not occur in version 3.2.4, where the file is correctly received. There are no restrictions on file size or other related configurations.

Steps to Reproduce

  1. Controller Setup:

    @PostMapping("/users")
    fun insertTryOnFace(
        @ModelAttribute imageFile: MultipartFile,
        @ModelAttribute gender: Gender,
    ) {
        // Implementation
    }
  2. Send a POST Request:

    • Endpoint: /users
    • Method: POST
    • Content-Type: multipart/form-data
    • Parameters:
      • imageFile: [Attach a file]
      • gender: [Provide appropriate value]
  3. Observe the Behavior:

    • Spring Boot 3.3.4: imageFile is null.
    • Spring Boot 3.2.4: imageFile is correctly received.

Expected Behavior
The MultipartFile should be correctly populated with the uploaded file data regardless of the Spring Boot version, provided there are no size or configuration restrictions.

Actual Behavior
In Spring Boot 3.3.4, the imageFile parameter is null when handling the POST request, whereas it works as expected in 3.2.4.

Additional Information

  • Spring Boot Versions:
    • Affected: 3.3.4
    • Working: 3.2.4
  • File Size Limits: No restrictions set; default configurations are used.
  • Environment: �MacOs
  • Relevant Dependencies: jvmTarget 17, kotlinVersion 2.0.21, io.spring.dependency-management 1.1.6

Request
Looking for assistance or a fix to ensure that MultipartFile is correctly populated in Spring Boot 3.3.4 when using @ModelAttribute.

Metadata

Metadata

Assignees

Labels

for: external-projectNeeds a fix in external projectin: webIssues in web modules (web, webmvc, webflux, websocket)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions