Преобразование строки в дату для Graphql при весенней загрузке 3.5JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Преобразование строки в дату для Graphql при весенней загрузке 3.5

Сообщение Anonymous »

Я переношу приложение Spring Boot с версии 2.6.6 на 3.5.0 и обновляю JDK с 17 до 21.
Ранее я использовал зависимость Graphql-kickstart, но заменил ее встроенной зависимостью Spring Boot GraphQL.
Есть кое-что, с чем мне удалось сделать graphql-kickstart, что я не могу сделать с новой зависимостью.
Ранее у меня была следующая настройка:
file.graphqls

Код: Выделить всё

myFunction(dateField: String): OutputDTO
file.java

Код: Выделить всё

public OutputDTO myFunction(Date dateField) { ... }
После миграции Spring Boot и зависимости GraphQL мой Java-код теперь выглядит так:

Код: Выделить всё

@QueryMapping
public OutputDTO myFunction(@Argument Date dateField) { ... }
При запуске я получаю следующую ошибку:

Код: Выделить всё

ERROR 98421 --- [nio-8082-exec-2] s.g.e.ExceptionResolversExceptionHandler :  Unresolved BindException for executionId d1ee4d2c-8c2c-3f75-0833-f925fea8e154

org.springframework.validation.BindException: org.springframework.graphql.data.GraphQlArgumentBinder$ArgumentsBindingResult: 1 errors
Field error in object 'date' on field '$': rejected value [2025-04-16T09:37:58Z]; codes [typeMismatch.date,typeMismatch]; arguments []; default message [Failed to convert argument value]
at org.springframework.graphql.data.GraphQlArgumentBinder.bind(GraphQlArgumentBinder.java:151)
...
Есть ли способ исправить это, не изменяя весь существующий код?

Подробнее здесь: https://stackoverflow.com/questions/797 ... g-boot-3-5
Ответить

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

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

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

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

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