복붙노트

[SPRING] 봄 데이터 나머지 V.S 패치 LinkableResources을 PUT

SPRING

봄 데이터 나머지 V.S 패치 LinkableResources을 PUT

내 법인의와 관계를 노출 스프링 데이터 REST를 사용하고 있습니다. 나는 두 엔티티의 사이에 OneToOne 관계를하고 난 / 업데이트 PUT 및 PATCH와의 관계를 변경하는 것을 시도하고있다.

나는 봄 데이터 REST는 당신이 링크 된 자료를 업데이트 할 수 있습니다 것으로 나타났습니다 - 패치를 통해와 PUT으로 무시됩니다 - JPA는 AggregateRoots (저장소를 가지고)입니다 엔티티의 (OneToMany, ManyToOne 등) 매핑.

이것은 LinkedAssociationSkippingAssociationHandler 클래스에서 볼 수있다 :

if (associationLinks.isLinkableAssociation(association)) {
  return;
}

왜 이런거야? 이 뒤에 이유는 무엇입니까?

그것은 디자인이 문서의이 부분에서 볼 수 있듯이 자원을 자신과 연결을 치료하기 위해 우리를 원하기 때문에인가? 나는 콘텐츠 유형 텍스트 / URI 목록과 PUT을 통해 관계를 변경할 수 있지만 자연스러운 느낌과 추가 HTTP 요청을 필요로한다.

해결법

  1. ==============================

    1.봄의 데이터 REST 2.5.9.RELEASE에서 협회는 PUT 요청에 업데이트 만 패치를 사용하여 업데이트되지 않습니다.

    봄의 데이터 REST 2.5.9.RELEASE에서 협회는 PUT 요청에 업데이트 만 패치를 사용하여 업데이트되지 않습니다.

    버전 2.5.9.RELEASE의 변화 (2017년 4월 19일)

    DATAREST - 1030 - PATCH 요청이 제대로 협회에 대한 링크를 처리하지 않습니다.

    이것에 대해 다른 링크 :

    DATAREST-1061 : 프로그램 / JSON 미디어 유형 페이로드 PUT 요청은 URI에 의해 연관 @OneToOne를 업데이트 할 수없는

    도메인 기반 설계 및 봄

  2. from https://stackoverflow.com/questions/45442419/spring-data-rest-put-v-s-patch-linkableresources by cc-by-sa and MIT license