簡體   English   中英

jersey-dropwizard上的資源查詢參數驗證

[英]Resource query parameter validation on jersey-dropwizard

我有一個dropwizard應用程序,並且在一種資源中,我想要一個必需的查詢參數。 我知道jersey支持Bean驗證,所以我嘗試使用@NotNull批注,但沒有用。 這是資源代碼:

@Path("/resource/{id}")
@Produces(MediaType.APPLICATION_JSON)
public class MyResource {
    //....constructor...

    @GET
    public String test(
        @PathParam("id") long id,
        @NotNull @QueryParam("required_param") long param) {
        //....
    }
}

如果不清楚,我想發生的事情是每當客戶端發送不帶參數required_pa​​ram的請求時,我都想返回一個錯誤。

閱讀文檔后,我認為也許dropwizard的配置是原因。 因此,我將這段代碼添加到了我的應用程序的run方法中:

environment.jersey().property("jersey.config.disableAutoDiscovery", false);
environment.jersey().property("jersey.config.server.disableAutoDiscovery", false);
environment.jersey().property("jersey.config.beanValidation.disable.server", false);

不幸的是,這也不起作用。 有人對如何執行此操作有想法嗎?

您是否嘗試過使用Long對象而不是原始類型?

暫無
暫無

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

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