jstl url 标签生成错误 url

jstl url tag generates wrong url

我正在尝试将请求发送到我的 Spring MVC 控制器映射 url:

 @RequestMapping(value = "/place/{placeId}/menu/service", method = RequestMethod.POST)
public String registerNewPlaceMenuService(@Valid ServiceDTO serviceDTO,
                                          @PathVariable("placeId") long placeId,
                                          BindingResult result) {
    if(!result.hasErrors()) {
        PlaceUser user = userService.placeUser();
        Place place = placeService.getOwnerPlace(placeId, user);
        if (place != null) {
            PlaceMenu menu = dao.getMenuById(serviceDTO.getMenuId());
            if (place.getPlaceMenu().contains(menu)) {
                placeService.registerNewPlaceMenuService(menu, serviceDTO);
            }
        }
    }
    return "redirect:place/" + placeId;
}

这就是我使用 jstl url 标签的方式:

<c:url context="/" value='/place/${place.id}/menu/service'
var="newservice"/>
<sf:form modelAttribute="service" action="${newservice}" method="post">

这就是我得到的:

http://localhost:8080/place/30/menu/place/30

我什至不明白最后一个“/service”部分去哪儿了! 我发送请求的页面有这个 url

http://localhost:8080/place/30

求助!

试试这个:

@RequestMapping(value = "/place/{placeId}/menu/service", method =
 RequestMethod.POST)