Обновление Spring Boot 3 вызывает nosuchmethoderror для clienthttpresponse.getstatuscode () - как поддержать Legacy SpriJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Обновление Spring Boot 3 вызывает nosuchmethoderror для clienthttpresponse.getstatuscode () - как поддержать Legacy Spri

Сообщение Anonymous »

Я обновляю свое основное приложение с Spring Boot 2.x до 3.x .
Обновление в основном успешное, за исключением вопроса о совместимости времени выполнения , вызванной 3-й стороны или устаревшими внутренними библиотеками, которые до сих пор зависят от Boot 2.x и Resttemplate api. /> Контекст:

[*] Мое основное приложение теперь использует:

Spring Boot: 3.x
[*] Spring Framework: 6.x
[*] jdk: 17 jdk: 17 />
[*] Однако у меня есть сотни общих SDK/библиотеки (некоторые внутренние, около 3-й стороны), которые:

Скомпилируется против boot 2.x
. org.springframework.web.client.resttemplate < /code> < /li>
Внутренний звонок:
org.springframework.http.client.ClientHttpResponse#getStatusCode()
< /code>
ожидает, что он вернет org.springframework.http.httpstatus < /code>. < /li>
< /ul>
< /li>
< /ul>

После обновления, я получаю следующую ошибку во время runTime:

. ‘Org.springframework.http.httpstatus org.springframework.http.client.clienthttpresponse.getStatuscode ()’
Это происходит внутри клиента. фрагмент из трассировки стека:
, вызванный: java.lang.nosuchmethoderror: ‘org.springframework.http.httpstatus org.springframework.http.client.clienthtpresponse.getstatuscode () com.legacy.sdk.interceptor.legacyInterceptor.Intercept (LegacyInterceptor.java:46)
at org.springframework.web.client.resttemplate.doexecute (Resttemplate.java:900) < /p>
Это имеет смысл, потому что Framebride 6.s. />Old (Spring Boot 2.x / Framework 5.x):
HttpStatus ClientHttpResponse.getStatusCode();
New (Spring Boot 3.x / Framework 6.x):
HttpStatusCode ClientHttpResponse.getStatusCode();
The old method was removed (not Установилось), поэтому библиотеки, ожидающие, что старая подпись будет разрушена. Любая официальная или рассмотренная стратегия, рекордная сообщество по запуску Spring Boot 2.x, скомпилированные SDK (которые полагаются на устаревшие/удаленные методы, такие как ClientHttpresponse#getStatuscode ()) внутри приложения Spring Boot 3?

Подробнее здесь: https://stackoverflow.com/questions/796 ... getstatusc
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»