Nie można odwzorować wyrażenia regularnego - java.lang.IllegalArgumentException: Liczba grup przechwytywania w segmencie wzorca

Mam następujący sposób zdefiniowany w moim kontrolerze:

@RequestMapping(value = "/ajax/comments/post/{contentId:([apv]|ad)\\d+}")
    public @ResponseBody
    ActionResult handlePostCommentRequest(HttpServletRequest request, Model model,
            @PathVariable("contentId") String assetId,
            @RequestParam(value = "nickName", required = false, defaultValue = "Anonyymi") String nickName,
            @RequestParam(value = "text", required = false, defaultValue = "") String text,
            @RequestParam(value = "createThread", required = false, defaultValue = "false") String createThread) {
            // some code...
}

Jednak gdy wykonuję następujące żądanie HTTP - / ajax / comments / post / ad1374659405664 otrzymuję wyjątek:

org.springframework.web.util.NestedServletException: przetwarzanie żądania nie powiodło się; zagnieżdżonym wyjątkiem jest java.lang.IllegalArgumentException: liczba grup przechwytujących w segmencie wzorca (([apv] | ad) d +) nie odpowiada liczbie zmiennych szablonu URI, które definiuje, co może wystąpić, jeśli grupy przechwytujące są używane wyrażenie regularne szablonu URI. Zamiast tego użyj grup nie przechwytujących.

Google nie daje tak wielu wyników i jest dziwne, ponieważ gdy sprawdzam wyrażenie regularne([vpa]|ad)\d+ whttp://regexpal.com/ wszystko pasuje poprawnie. Co ja robię źle?

questionAnswers(1)

yourAnswerToTheQuestion