Spring boot 如何在SpringBootWeb服务中获取两个缺少的参数名

Spring boot 如何在SpringBootWeb服务中获取两个缺少的参数名,spring-boot,exception,Spring Boot,Exception,我正在构建一个带有自定义错误处理的web服务 我现在被卡住了,因为我无法获取缺少的参数的名称,而这些参数不止一个 假设我有一个端点,如下所示: public ResponseEntity<Class> endpointGet( @NotNull @Valid @RequestParam(value = "param1", required = true) String param1, @NotNull @Valid

我正在构建一个带有自定义错误处理的web服务

我现在被卡住了,因为我无法获取缺少的参数的名称,而这些参数不止一个

假设我有一个端点,如下所示:

public ResponseEntity<Class> endpointGet(
            @NotNull @Valid @RequestParam(value = "param1", required = true) String param1,
            @NotNull @Valid @RequestParam(value = "param2", required = true) String param2, 
            @NotNull @Valid @RequestParam(value = "param2", required = true) String param3) {
        
        
        return new ResponseEntity<>(method(param1, param2, param3), HttpStatus.OK);
    }
公共响应endpointGet(
@NotNull@Valid@RequestParam(value=“param1”,required=true)字符串param1,
@NotNull@Valid@RequestParam(value=“param2”,required=true)字符串param2,
@NotNull@Valid@RequestParam(value=“param2”,required=true)字符串param3){
返回新的ResponseEntity(方法(param1,param2,param3),HttpStatus.OK);
}
以及以下错误处理程序:

@ExceptionHandler(MissingServletRequestParameterException.class)
    ResponseEntity<ErrorStructure> MissingServletRequestParameterHandler(MissingServletRequestParameterException ex)
    {
        ErrorStructure struct = new ErrorStructure();
        Error error = new Error();
        error.setCode("1111");
        error.category(CategoryEnum.VALIDATION);
        error.setMessage("Missing required parameter");
        struct.addErrorsItem(error);
        
        Detail detail = new Detail();
        detail.setKey(ex.getParameterName());
        detail.setValue("MISSING");
        
        error.addDetailsItem(detail);
        
        return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(struct);
    }
@ExceptionHandler(MissingServletRequestParameterException.class)
ResponseEntity MissingServletRequestParameterHandler(MissingServletRequestParameterException ex)
{
ErrorStructure struct=新的ErrorStructure();
错误=新错误();
错误。设置代码(“1111”);
错误.category(CategoryEnum.VALIDATION);
错误。setMessage(“缺少必需参数”);
结构AddErrorItem(错误);
细节细节=新细节();
setKey(例如getParameterName());
详细信息。设置值(“缺失”);
错误。addDetailsItem(详细信息);
返回ResponseEntity.status(HttpStatus.BAD_请求).body(结构);
}
如果3个参数中有2个缺失此错误结构仅获取第一个

我如何才能让其中的2个将它们添加到Error::DetailsList中的响应中