Query(value = "SELECT * FROM test where id = :key", nativeQuery=true)
public User findById(@Param("key") String key);
Вышеупомянутый запрос работает нормально.
Query(value = "SELECT * FROM test where id = :key", nativeQuery=true)
public localhost._8080.ws.User findId(@Param("key") String key);
Но вышеупомянутый запрос получает ошибку, как показано ниже:
Конвертер не найден, способный преобразовываться из типа [org.springframework.data.jpa.repository.query.AbstractJpaQuery $ TupleConverter $ TupleBackedMap] для ввода [localhost._8080.ws.User]
SOAP XSD создал автоматически сгенерированные классы и ожидает выход localhost._8080.ws.User типа из-за ошибки получения.
Пожалуйста, предложите эту ошибку.
Spring Data JPA не предназначен для сопоставления произвольных результатов операторов SQL с произвольными объектами.
Он отображает результаты в DTO или проекции. Скорее всего, вы создали класс, свойства которого он не знает, как обращаться.
Вероятно, самый разумный способ решить это - вернуть репозитарию то, что он может обрабатывать (User
или Map
должен работать) и создать желаемый тип оттуда, используя свой собственный код или библиотеку, предназначенную для такого преобразования. Для этого бульдозер кажется популярным выбором.