2015-10-20 22 views
0

我在POST的資源中獲取了NULL @HeaderParam。但是,身份驗證篩選器會在呼叫到達資源前攔截呼叫併成功提取標題信息。相同的標題信息。在資源中結果爲空。Jersey @HeaderParam null在POST中

它在構造函數中失敗並拋出NullPointerException。

代碼資源類:

@Path("/profile") 
@Consumes(MediaType.APPLICATION_JSON) 
public class UserAccountEP { 

    @HeaderParam("userId") 
    public String userId; 

    public UserAccountEP() 
    { 
     if(userId==null) 
      throw new NullPointerException("UserId is null"); 
    } 


    @POST 
    @Path("/action") 
    public void action(String ip) throws IOException {} 

}

是否有人可以看看我在做什麼錯?

謝謝。

回答

1

注入發生在構造類之後,所以你不能在構造函數中訪問注入值。

使用@PostConstruct來註釋一個回調方法,如下所示。

@PostConstruct 
private void validate() { 
    .... 
} 
+0

那麼,有沒有我可以用來驗證注入值的注入監聽器?不過謝謝。 – TBA

+0

它的工作,謝謝:) – TBA

相關問題