簡體   English   中英

假陽性聲納問題

[英]False-positive Sonar issue

問題:聲納為什么會向我發出警告(“更改此問題,以便它不會始終評估為“ false”。)。我已經證明,當requestEntity不執行時, if (info == null)評估為true , t包含在db中找到的有效負載,那么我該如何消除這種誤報呢?它與@Nullable@Checkfornull@Nonnull注釋有關嗎?我知道postForObject方法使用@Nullable注釋。

      Info info = restTemplate.postForObject(connectionString, requestEntity,
         Info.class);

      if (info == null) {
         throw new ApplicationException(Constants.NO_RESULT_ERROR_CODE);
      }

這是postForObject方法:

    @Override
    @Nullable
    public <T> T postForObject(URI url, @Nullable Object request, Class<T> responseType)
            throws RestClientException {

        RequestCallback requestCallback = httpEntityCallback(request, responseType);
        HttpMessageConverterExtractor<T> responseExtractor =
                new HttpMessageConverterExtractor<>(responseType, getMessageConverters());
        return execute(url, HttpMethod.POST, requestCallback, responseExtractor);
    }

您可以在報告的行上使用// NOSONAR (並可能解釋為什么您忽略了此問題)。

那不是最好的解決方案,但是它可以工作(至少在Eclipse中使用時)。

您也可以將@SuppressWarnings用於問題類型(例如: squid:02020 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM