이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 29172|회답: 1

[출처] 여러 동일한 서비스 이름에 대한 Java FeignClient Interface 예외 솔루션

[링크 복사]
게시됨 2021. 9. 14. 오후 6:05:15 | | | |
Spring Cloud는 마이크로서비스 통신에 OpenFeign을 사용하며, 동일한 서비스 이름이 인터페이스와 다를 때 다음과 같이 오류가 보고됩니다:

Description:

콩 '이츠브세. FeignClientSpecification'은 등록할 수 없었습니다. 그 이름을 가진 빈은 이미 정의되어 있으며 오버라이드는 비활성화됩니다.

Action:

빈 중 하나를 이름 바꾸거나 spring.main.allow-bean-definition-overrideing=true 설정으로 오버라이딩을 활성화하는 것을 고려해 보세요


원인 분석

여러 FeignClient 인터페이스의 값은 모두 xxxx-server이며, Springboot 2.2.x의 빈 이름은 @FeignClient의 값(즉, 이름)에 따라 명명되어 이미 정의된 빈입니다.


용액

해결책 1: 오류 프롬프트에 따라 다음 구성을 추가한다:



해결책 2: FeignClient를 정의할 때 동시에 contextId 속성을 정의하고, 이는 beanName 규칙에 포함되며, 빈이 정의된 경우 예외가 없습니다.

(끝)




이전의:Windows는 외부(이그ress) IP 주소를 얻을 수 있는 브라우저가 없습니다
다음:자바에서 흔히 사용되는 기능 인터페이스(디리게이트)에 대한 상세한 설명
 집주인| 게시됨 2021. 9. 22. 오후 3:28:34 |

GET는 요청 기관이 없어야 합니다


feign은 okhttp3의 Get 메서드를 사용할 때 인터페이스를 요청할 때 @RequestParam을 추가해야 합니다.컨트롤러는 추가하지 않아도 추가할 수 있습니다

예시는 다음과 같습니다:



면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com