亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Spring MVC測試中如何避免“圓形視圖路徑”異常

Spring MVC測試中如何避免“圓形視圖路徑”異常

MMTTMM 2019-11-13 09:47:59
我的一個控制器中有以下代碼:@Controller@RequestMapping("/preference")public class PreferenceController {    @RequestMapping(method = RequestMethod.GET, produces = "text/html")    public String preference() {        return "preference";    }}我只是想使用Spring 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());    }}我收到以下異常:循環視圖路徑[preference]:將再次分派回當前處理程序URL [/ preference]。檢查您的ViewResolver設置!(提示:由于默認視圖名稱的生成,這可能是未指定視圖的結果。)我感到奇怪的是,當我加載包含模板和視圖解析器的“完整”上下文配置時,它工作正常,如下所示:<bean class="org.thymeleaf.templateresolver.ServletContextTemplateResolver" id="webTemplateResolver">    <property name="prefix" value="WEB-INF/web-templates/" />    <property name="suffix" value=".html" />    <property name="templateMode" value="HTML5" />    <property name="characterEncoding" value="UTF-8" />    <property name="order" value="2" />    <property name="cacheable" value="false" /></bean>我很清楚,模板解析器添加的前綴可確保應用程序使用此模板解析器時沒有“圓形視圖路徑”。但是我應該如何使用Spring MVC測試來測試我的應用程序呢?有人知道嗎?
查看完整描述

3 回答

?
寶慕林4294392

TA貢獻2021條經驗 獲得超8個贊

我通過使用@ResponseBody解決了這個問題,如下所示:


@RequestMapping(value = "/resturl", method = RequestMethod.GET, produces = {"application/json"})

    @ResponseStatus(HttpStatus.OK)

    @Transactional(value = "jpaTransactionManager")

    public @ResponseBody List<DomainObject> findByResourceID(@PathParam("resourceID") String resourceID) {


查看完整回答
反對 回復 2019-11-13
  • 3 回答
  • 0 關注
  • 1062 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號