Skip to content

RepresentationModelProcessor nullpointer having mandatory field in controller spring 2.7.4 #1872

Open
@csigmanek

Description

@csigmanek

Hello,

I have a ResourceProcessor that's adding links to a resource:

linkTo(methodOn(MyController.class)
  .findMyElements(file.getId(), null, null))
  .withRel("filterFiles"))

The controller looks like this:

@RequestMapping(method = { POST, GET }, value = "/myFiles/{fileId}/filterFiles")
  public List<FileDto> findFilterFiles(
      @PathVariable("fileId") final Long fileId,
      @RequestParam(name = "fileType") final Long fileType,
      @RequestBody(required = false) final FileFilterDto filter) { … }

In Spring 2.6.4, it used to work. Now, I've tried upgrading to 2.7.4, and it does not work anymore. I've tracked the issue down, and it seems like the required request parameter must not be null anymore.

I'm getting a null pointer exception with text like this:
Illegal character in query at index 93: http://localhost:8080/files/10013/filterFiles?fileType={fileType}
with the index pointing to '=' of fileType={fileType} .

Is it a bug? If yes - how can I fix it? Passing a constant number fixes the null-pointer exception:

linkTo(methodOn(MyController.class)
  .findMyElements(file.getId(), 1L, null))
  .withRel("filterFiles"))

but it leads to incorrect code.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions