小编Lah*_*ara的帖子

Spring Context中未加载Spring Boot全局控制器建议

我有一个控制器来接收POST请求并返回JSON输出。在控制器类内部实现的异常处理程序工作正常。

我试图添加带@ControllerAdvice注释的全局异常处理,但这在我的解决方案中不起作用。我不认为全局异常处理程序类正在加载。

下面是我的控制器类:

package hello;

@Controller
@RequestMapping("/v1")
public class MyController {

  @RequestMapping(value = "/saveEmployee", method = RequestMethod.POST, produces = "application/json")
  @ResponseBody
  public String saveEmployee(@Valid @RequestBody Employee employee) {
    return "{ \"name\":\"" + employee.getEmail() + "\"}";
  }
}
Run Code Online (Sandbox Code Playgroud)

以下是全局异常处理程序类:

package util;

@ControllerAdvice
public class MyControllerAdvice {

  @ExceptionHandler(MethodArgumentNotValidException.class)
  // @ResponseStatus(HttpStatus.BAD_REQUEST)
  @ResponseBody
  public String processValidationError(MethodArgumentNotValidException ex) {
    BindingResult result = ex.getBindingResult();
    FieldError fieldError = result.getFieldError();
    String code = fieldError.getCode();
    String field = fieldError.getField();
    String message = fieldError.getDefaultMessage();
    message = "{ \"Code\":\"" …
Run Code Online (Sandbox Code Playgroud)

java spring spring-boot

5
推荐指数
1
解决办法
2213
查看次数

使用 SonarLint 插件和 SonarQube 服务器未检测到 HTTP 请求重定向漏洞

一旦我们使用 sonarCube 和 SonarLint eclipse 插件进行静态代码分析,它们都无法检测到以下代码段中的漏洞。但这已被定义为声纳源网站规则下的漏洞。

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
  String location = req.getParameter("url");
  resp.sendRedirect(location); // Noncompliant
}
Run Code Online (Sandbox Code Playgroud)

参考 https://rules.sonarsource.com/java/RSPEC-5146

java sonarqube sonarqube-scan

5
推荐指数
0
解决办法
45
查看次数

标签 统计

java ×2

sonarqube ×1

sonarqube-scan ×1

spring ×1

spring-boot ×1