2016-03-19 189 views
-1

我正在開發一個jhipster應用程序,並且試圖僅爲我的應用程序的每個用戶顯示他創建的實體:我將此代碼添加到?無法解決方法SpringSecurity

PianoResourceIntTest.java:

@Test 
@Transactional 
public void getAllPianos() throws Exception { 
    // Initialize the database 

    restPianoMockMvc = MockMvcBuilders.webAppContextSetup(context).apply(springSecurity()).build(); 
    // pianoRepository.saveAndFlush(piano); 
    piano.setUser(userRepository.findOneByLogin("user").get()); 
    pianoRepository.saveAndFlush(piano); 

    // Get all the pianos 
    //restPianoMockMvc.perform(get("/api/pianos?sort=id,desc").with(user("user"))) 
    restPianoMockMvc.perform(get("/api/pianos?sort=id,desc").with(user("user")) 
      .andExpect(status().isOk()) 
      .andExpect(content().contentType(MediaType.APPLICATION_JSON)) 
      .andExpect(jsonPath("$.[*].id").value(hasItem(piano.getId().intValue()))) 
      .andExpect(jsonPath("$.[*].name").value(hasItem(DEFAULT_NAME.toString()))) 
      .andExpect(jsonPath("$.[*].date").value(hasItem(DEFAULT_DATE.toString()))); 
} 

但我發現了兩個錯誤:

Cannot resolve the method SpringSecurity 
Cannot resolve the symbol user 

我不知道如何來處理這個問題,以及如何解決問題。

+2

我回答,但你的問題是非常糟糕的。你沒有給出足夠的細節:什麼樣的錯誤(運行時或編譯)。您的代碼提取不包括像導入或類定義這樣的重要部分,以查看它是否擴展了另一個類。此外,你經常發佈,所以請提高你的問題的質量 –

+1

你可以請添加更多的細節問題(只是編輯它)?有什麼可以用來確定問題是Spring配置和項目的依賴關係(如果你使用Maven,POM文件) –

回答

0

我想這些錯誤是編譯錯誤而不是運行時錯誤。

user()是類SecurityMockMvcRequestPostProcessors中的靜態方法,因此您可以爲其添加靜態導入。對於springSecurity

同樣的事情(),這是在課堂上SecurityMockMvcConfigurers

檢查靜態方法Spring Security doc about Spring MVC test integration

+0

我很抱歉,但我真的是一個初學者,是的,這是一個編譯錯誤:我添加 <彈簧security.version> 4.0.1.RELEASE org.springframework.security 彈簧安全檢驗 $ {彈簧安全.version} test 給我的朋友。 XML文件,當我試圖做一個靜態導入:「導入靜態org.springframework.security.test.web.servlet.setup.SecurityMockMvcConfigurers。*; 「我有一個錯誤:」測試無法解決「我不知道爲什麼? – chouchato

+0

幾乎不可能幫助你,你沒有提供足夠的信息,你應該發佈一個要求(https://gist.github.com /)到你的pom.xml和測試類。maven能夠解決你的依賴關係嗎? –