[英]Error: No converter found capable of converting from type JPA Model type to Custom object [Model]
public class Payload {
private Clob paylaod;
public Clob getPaylaod() {
return paylaod;
}
public void setPaylaod(Clob paylaod) {
this.paylaod = paylaod;
}
}
@Entity
@Table(name ="ORDER")
@Data
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Model implements Serializable {
@Id
@Column(name = "REQUEST_ID", nullable = false, unique = true)
private String requestId;
@Column(name = "VERSION")
private BigDecimal version;
@Column(name = "SOURCE")
private String source;
@Column(name = "SOURCE_ID")
private String sourceId;
@Lob
@Column(name = "PAYLOAD")
private Clob payload;
}
3.This is my repository. 3.这是我的资料库。
public interface OrderRepository extends JpaRepository<Model, String>
{
@Query(value="SELECT PAYLOAD FROM ORDER WHERE REQUEST_ID = ?",nativeQuery = true)
Payload getDetailsById(String requestId);
}
@RestController
@RequestMapping("/v1/order-data/Order")
public class OrderController {
@Autowired
OrderRepository repository;
@GetMapping("/getDetailsById/{requestId}")
public Payload getDetailsById(@PathVariable("requestId") String id) {
return repository.getDetailsById(id);
}
}
4.Getting Below error: 4.报错:
** org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap] to type [model.Payload] at org.springframework.core.convert.support.GenericConversionService.handleConverterNotFound(GenericConversionService.java:322) ~[spring-core-5.3.10.jar:5.3.10] at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:195) ~[spring-core-5.3.10.jar:5.3.10] at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:175) ~[spring-core-5.3.10.jar:5.3.10] at org.springframework.data.repository.query.ResultProcessor$ProjectingConverter.convert(ResultProcessor.java:313) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.data.repository.query.ResultProcessor$Cha ** org.springframework.core.convert.ConverterNotFoundException:找不到能够从类型 [org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap] 转换为类型 [model.Payload] at org.springframework 的转换器.core.convert.support.GenericConversionService.handleConverterNotFound(GenericConversionService.java:322) ~[spring-core-5.3.10.jar:5.3.10] 在org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.8821582869: 195) ~[spring-core-5.3.10.jar:5.3.10] 在 org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:175) ~[spring-core-5.3.10.jar:5.3.10 ] 在 org.springframework.data.repository.query.ResultProcessor$ProjectingConverter.convert(ResultProcessor.java:313) ~[spring-data-commons-2.4.13.jar:2.4.13] 在 org.springframework.data.repository.query .ResultProcessor$查iningConverter.lambda$and$0(ResultProcessor.java:229) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.data.repository.query.ResultProcessor$ChainingConverter.convert(ResultProcessor.java:240) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.data.repository.query.ResultProcessor.processResult(ResultProcessor.java:170) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.data.jpa.repository.query.AbstractJpaQuery.doExecute(AbstractJpaQuery.java:158) ~[spring-data-jpa-2.4.13.jar:2.4.13] at org.springframework.data.jpa.repository.query.AbstractJpaQuery.execute(AbstractJpaQuery.java:143) ~[spring-data-jpa-2.4.13.jar:2.4.13] at org.springframework.data.repository.core.support.RepositoryMethodInvoker.doInvoke(RepositoryMethodInvoker.java:137) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.
iningConverter.lambda$and$0(ResultProcessor.java:229) ~[spring-data-commons-2.4.13.jar:2.4.13] 在 org.springframework.data.repository.query.ResultProcessor$ChainingConverter.convert(ResultProcessor.8821328:94588 240) ~[spring-data-commons-2.4.13.jar:2.4.13] 在 org.springframework.data.repository.query.ResultProcessor.processResult(ResultProcessor.java:170) ~[spring-data-commons-2.4.13.jar :2.4.13] 在 org.springframework.data.jpa.repository.query.AbstractJpaQuery.doExecute(AbstractJpaQuery.java:158) ~[spring-data-jpa-2.4.13.jar:2.4.13] 在 org.springframework. .jpa.repository.query.AbstractJpaQuery.execute(AbstractJpaQuery.java:143) ~[spring-data-jpa-2.4.13.jar:2.4.13] 在 org.springframework.data.repository.core.support.RepositoryMethodInvod( RepositoryMethodInvoker.java:137) ~[spring-data-commons-2.4.13.jar:2.4.13] 在 org.springframework。 data.repository.core.support.RepositoryMethodInvoker.invoke(RepositoryMethodInvoker.java:121) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.doInvoke(QueryExecutorMethodInterceptor.java:152) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.invoke(QueryExecutorMethodInterceptor.java:131) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:80) ~[spring-data-commons-2.4.13.jar:2.4.13] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.
data.repository.core.support.RepositoryMethodInvoker.invoke(RepositoryMethodInvoker.java:121) ~[spring-data-commons-2.4.13.jar:2.4.13] 在 org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.doInvoke (QueryExecutorMethodInterceptor.java:152) ~[spring-data-commons-2.4.13.jar:2.4.13] 在 org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.invoke(QueryExecutorMethodInterceptor ~88213884694)[ data-commons-2.4.13.jar:2.4.13] 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10framework] 在.org.spring data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:80) ~[spring-data-commons-2.4.13.jar:2.4.13] 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceedInvocation. java:186) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) ~[spring-tx-5.3.10.jar:5.3.10] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.10.jar:5.3.10] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) ~[spring-tx-5.3.10.jar:5.3.10] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137) ~[spring-tx-5.3.10.jar:5.3.10] at org.springframework.aop.framework.ReflectiveMethodInvocati
java:186) ~[spring-aop-5.3.10.jar:5.3.10] 在 org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) ~[spring-tx-5.32.1207.8 10] 在 org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.10.jar:5.3.10] 在 org.springframework.transaction.interceptor.TransactionInterceptor.invoke.(TransactionInterceptor java:119) ~[spring-tx-5.3.10.jar:5.3.10] 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.32.10308.818:5.32.10308.818 ] 在 org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137) ~[spring-tx-5.3.10.jar:5.3.10] 在 org.springframework.aop.framework.ReflectiveMethodInvocati on.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:145) ~[spring-data-jpa-2.4.13.jar:2.4.13] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215) ~[spring-aop-5.3.10.jar:5.3.10] at com.s
on.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:145) ~ [spring-data-jpa-2.4.13.jar:2.4.13] 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.10.jar:5.3.10] .springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) ~[spring-aop-5.3.10.jar:5.3.10] 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation82488218:868218) ~[spring-aop-5.3.10.jar:5.3.10] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215) ~[spring-aop-5.3.10.jar:5.3.10] at com.秒un.proxy.$Proxy121.getDetailsById(Unknown Source) ~[na:na] at Controller.getDetailsById(Controller.java:62) ~[classes/:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) ~[spring-web-5.3.10.jar:5.3.10] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) ~[spring-web-5.3.10.jar:5.3.10] at org.springframework.web.servlet.mvc.method.ann
un.proxy.$Proxy121.getDetailsById(未知来源)~[na:na] 在 Controller.getDetailsById(Controller.java:62)~[classes/:na] 在 java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke (本机方法)~[na:na] 位于 java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] 位于 java.base/jdk.internal.reflect.AccessortingMethod调用(DelegatingMethodAccessorImpl.java:43)~[na:na] 在 java.base/java.lang.reflect.Method.invoke(Method.java:566)~[na:na] 在 org.springframework.883655086.8988. support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) ~[spring-web-5.3.10.jar:5.3.10] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) ~[spring -web-5.3.10.jar:5.3.10] 在 org.springframework.web.servlet.mvc.method.ann otation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServl
otation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895 )〜[spring-webmvc-5.3.10.jar:5.3.10] 5.3.10] at org.springframework.web.Servlet.mvc.method.abstracthandlermethodadapter.handle(abstracthandlermethodadapter.java:8721324694588:87) DispatcherServlet.doDispatch(DispatcherServlet.java:1067) ~[spring-webmvc-5.3.10.jar:5.3.10] 在 org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServl et.java:963) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.3.10.jar:5.3.10] at javax.servlet.http.HttpServlet.service(HttpServlet.java:655) ~[tomcat-embed-core-9.0.53.jar:4.0.FR] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.3.10.jar:5.3.10] at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[tomcat-embed-core-9.0.53.jar:4.0.FR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalin
et.java:963) ~[spring-webmvc-5.3.10.jar:5.3.10] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.3.10.jar:5.3 .10] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.3.10.jar:5.3.10] at javax.servlet.http.HttpServlet.service(HttpServlet.java :655) ~[tomcat-embed-core-9.0.53.jar:4.0.FR] 在 org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.3.10.88203.8878591 10] 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[tomcat-embed-core-9.0.53.jar:4.0.FR] 在 org.apache.catalinaFilterCcore.ApplicationFir java:227) ~[tomcat-embed-core-9.0.53.jar:9.0.53] 在 org.apache.catalin a.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.53.jar:9.0.53] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.10.jar:5.3.10] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.10.jar:5.3.10] at org.apache.catalina.core.ApplicationFilterC
a.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~ [tomcat-embed-websocket-9.0.53.jar:9.0.53] 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.508.859:9.0.5087.859] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter. java:100) ] 在 org.apache.catalina.core.ApplicationFilterC hain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.10.jar:5.3.10] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.10.jar:5.3.10] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetri
hain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFiltercatem28:8694528[8694528] -core-9.0.53.jar:9.0.53] at org.springframework.web.filter.formcontentfilter.dofilter.dofilter.dofilterternerternalternerternalterthertherternaltertherternerternal(FormContentFilter.java888888888888888888888888888.BY.93) 。 embed-core-9.0.53.jar:9.0.53] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.8820g.883.0288891] or springframework.boot.actuate.metrics.web.servlet.WebMvcMetri csFilter.doFilterInternal(WebMvcMetricsFilter.java:97) ~[spring-boot-actuator-2.4.11.jar:2.4.11] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.10.jar:5.3.10] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.10.jar:5.3.10] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.10.jar:5.3.10] at org.apache.catalina.core.ApplicationFilterChain.inter
csFilter.doFilterInternal(WebMvcMetricsFilter.java:97) ~[spring-boot-actuator-2.4.11.jar:2.4.11] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web -5.3.10.jar:5.3.10] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina .core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[ spring-web-5.3.10.jar:5.3.10] at org.springframework.web.filter.onceperrequestfilter.dofilter.dofilter.dofilter(曾经Perrequestfilter.88213246694588888888888888888888888888.88088:119) catalina.core.ApplicationFilterChain.inter nalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-
nalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.53.jar:9.0.53] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.89215638246) -9.0.53.jar:9.0.53] at org.8apache.CATALINA.CORE.CORE.CORE.STANDARDWRAPPERVAKE.INVOKE(StandardWrapperVake.8821324694588:197) 。 tomcat-embed-core-9.0.53.jar:9.0.53] 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.578:8890108] org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)~[tomcat-embed-core- 9.0.53.jar:9.0.53] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1726) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.util.net.Socke
9.0.53.jar:9.0.53] at org.8apache.CATALINA.CORE.CORE.CORE.STANDARDENGINEVALVE.INVOKE.INVOKE(StandardEngineValve.java888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889转connector.CoyoteAdapter.service(CoyoteAdapter.java:357) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) ~[tomcat -embed-core-9.0.53.jar:9.0.53] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache .coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java: 1726) ~[tomcat-embed-core-9.0.53.jar:9.0.53] 在 org.apache.tomcat.util.net.Socke tProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na] **
tProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.53.jar:9.0.53] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed -Core-9.0.53.jar:9.0.53] at org.apache.tomcat.UTIL.UTIL.THREADS.THREADPOLERPOOLEXECECECECECECECECECECUTOR $ WRING(TREESPOOLEXECUTOR.88213246666669466694669466694666946669466946694669466946694669466946694669494.6669494) .apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.53.jar:9.0.53] 在 88213ja8284.694 ( java:834) ~[na:na] **
You're running a native query and not a JPA query and that's why the return type of getDetailsById(String requestId) is Object[] and not Clob or Model. Let's say your entity has 4 columns then object[0] will return the first column, object[1] will return the second column, and so on.您正在运行本机查询而不是 JPA 查询,这就是为什么 getDetailsById(String requestId) 的返回类型是 Object[] 而不是 Clob 或 Model。假设您的实体有 4 列,然后 object[0] 将返回第一列column, object[1] 将返回第二列,依此类推。
I'd suggest not to take away good things by using native queries.我建议不要通过使用本机查询来带走好东西。 Just use JPA query and be happy:)
只需使用 JPA 查询即可:)
Modify your method signature the following way通过以下方式修改您的方法签名
public interface OrderRepository extends JpaRepository<Model, String>
{
@Query(value="SELECT o.payload FROM ORDER o WHERE o.requestId = ?1")
Payload getDetailsById(String requestId);
}
I think the return type of your method getDetailsById() is Payload instead of Clob, change that and try to run.我认为您的方法 getDetailsById() 的返回类型是 Payload 而不是 Clob,更改它并尝试运行。 that might work.
那可能有用。
Because there's no relation between the payload Entity and the Model entity,Model entity have a CLOB type payload NOT an entity,so what you can do is add a relation between the two Entities as follows, so you can request the Payload with the specific request_id,since here it will hold the request_id as a foreign key in the db table,here's a snippet example:因为有效载荷实体和 Model 实体之间没有关系,Model 实体有一个 CLOB 类型的有效载荷而不是一个实体,所以你可以做的是在两个实体之间添加如下关系,这样你就可以请求具有特定 request_id 的有效载荷,因为这里它将 request_id 作为外键保存在数据库表中,这是一个片段示例:
@Entity
public class Payload {
@Lob
private Clob paylaod;
@OneToOne
@JoinColumn(name="request_id")
private Model model;
public Clob getPaylaod() {
return paylaod;
}
public void setPaylaod(Clob paylaod) {
this.paylaod = paylaod;
}
}
and in your Model class have a relation to it lets say OneToOne as follows:在你的 Model class 中有一个关系可以说 OneToOne 如下:
@Entity
@Table(name ="ORDER")
@Data
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Model implements Serializable {
@Id
@Column(name = "REQUEST_ID", nullable = false, unique = true)
private String requestId;
@Column(name = "VERSION")
private BigDecimal version;
@Column(name = "SOURCE")
private String source;
@Column(name = "SOURCE_ID")
private String sourceId;
@OneToOne(mappedBy="model")
private Payload payload;
} }
now you can use a native query or a JPQL query to retrieve what you want,eg:现在您可以使用本机查询或 JPQL 查询来检索您想要的内容,例如:
@Query(value="select * from payload where
payload.request_id=:requestId",nativeQuery=true)
Payload findByRequestId(@Param("requestId") String requestId);
hope this helps !希望这可以帮助 !
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.