이 기사에 설명 된대로 내가, 미디어 유형의 5 단계를 사용하여 도메인 기반의 설계 원칙에 내 REST API를 CQRS의 원칙을 적용하려고 : https://www.infoq.com/articles/rest-api-on-cqrs http://byterot.blogspot.ch/2012/12/5-levels-of-media-type-rest-csds.html5 단계 봄 REST
내 기술 컨텍스트는 Spring REST 프레임 워크 버전 3.2입니다.
기본적으로 다른 "도메인 모델"미디어 유형을 사용하여 내 명령을 매핑 할 수 있어야합니다. 이다
PUT /resources/123
Content-Type: application/json;domain-model=CommandOne
오류 :
@Controller
@RequestMapping("resources")
public class MyController {
@RequestMapping(value = "{id}", method = RequestMethod.PUT, consumes = "application/json;domain-model=CommandOne")
@ResponseBody
public void commandOne(@PathVariable Long id, @RequestBody CommandOne commandOne) {
LOG.info("Using command {}", commandOne);
}
@RequestMapping(value = "{id}", method = RequestMethod.PUT, consumes = "application/json;domain-model=CommandTwo")
@ResponseBody
public void commandTwo(@PathVariable Long id, @RequestBody CommandTwo commandTwo) {
LOG.info("Using command {}", commandTwo);
}
}
문제가있는 PUT에 대한 요청할 때, 나는 매핑 오류가 점점 오전 : 따라서, 나는 다음과 같은 매핑이 일을 기대
java.lang.IllegalStateException: Ambiguous handler methods mapped for HTTP path ...
Spring은 다른 도메인 모델의 미디어 유형과 동일한 URI를 매핑 할 수 없습니다. 어떤 생각을 어떻게 할 수 있을까요? 내가 놓친 게 있니?
많은 감사 : O)