Как избежать исключения «круговой путь» с помощью теста Spring MVC

У меня есть следующий код в одном из моих контроллеров:

@Controller
@RequestMapping("/preference")
public class PreferenceController {

    @RequestMapping(method = RequestMethod.GET, produces = "text/html")
    public String preference() {
        return "preference";
    }
}

Я просто пытаюсь проверить это с помощьюВесенний тест MVC следующее:

@ContextConfiguration
@WebAppConfiguration
@RunWith(SpringJUnit4ClassRunner.class)
public class PreferenceControllerTest {

    @Autowired
    private WebApplicationContext ctx;

    private MockMvc mockMvc;
    @Before
    public void setup() {
        mockMvc = webAppContextSetup(ctx).build();
    }

    @Test
    public void circularViewPathIssue() throws Exception {
        mockMvc.perform(get("/preference"))
               .andDo(print());
    }
}

Я получаю следующее исключение:

Путь к циклическому представлению [предпочтение]: снова отправит обратно к текущему URL обработчика [/ предпочтение]. Проверьте настройки ViewResolver! (Подсказка: это может быть результатом неуказанного представления из-за генерации имени представления по умолчанию.)

Что я нахожу странным, так это то, чтоработает нормально когда загружаюполный" конфигурация контекста в том числе шаблон и просмотр резольверов, как показано ниже:


    
    
    
    
    
    

Я хорошо знаю, что префикс, добавленный распознавателем шаблона, гарантирует, что нет "круговой обзор пути когда приложение использует этот шаблон разрешения.

Но тогда как я должен проверить свое приложение, используя Spring MVC test? У кого-нибудь есть какие-либо подсказки?

Ответы на вопрос(14)

Ваш ответ на вопрос