Why JPA Native Query causing SQL exception for column not found ?
Issue
- Why
JPA Native QuerygivingSQL exceptionfor column not found ?
12:37:34,756 INFO [stdout] (http-/127.0.0.1:8080-3) Hibernate: select Employee.id, Employee.first_name, Employee.last_name from EMPLOYEE Employee
12:37:34,907 WARN [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (http-/127.0.0.1:8080-3) SQL Error: 0, SQLState: S0022
12:37:34,908 ERROR [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (http-/127.0.0.1:8080-3) Column 'salary' not found.
12:37:34,909 ERROR [stderr] (http-/127.0.0.1:8080-3) javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query
12:37:34,910 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1387)
12:37:34,910 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1310)
12:37:34,911 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:273)
12:37:34,911 ERROR [stderr] (http-/127.0.0.1:8080-3) at com.tst.TestServlet.doGet(TestServlet.java:54)
12:37:34,911 ERROR [stderr] (http-/127.0.0.1:8080-3) at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
12:37:34,911 ERROR [stderr] (http-/127.0.0.1:8080-3) at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
12:37:34,911 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
12:37:34,911 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
12:37:34,911 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
12:37:34,912 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
12:37:34,913 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
12:37:34,913 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
12:37:34,913 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)
12:37:34,913 ERROR [stderr] (http-/127.0.0.1:8080-3) at java.lang.Thread.run(Thread.java:722)
12:37:34,913 ERROR [stderr] (http-/127.0.0.1:8080-3) Caused by: org.hibernate.exception.SQLGrammarException: could not execute query
12:37:34,913 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:122)
12:37:34,913 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:125)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.doList(Loader.java:2519)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.doList(Loader.java:2502)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2332)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.list(Loader.java:2327)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:338)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.internal.SessionImpl.listCustomQuery(SessionImpl.java:1826)
12:37:34,914 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:231)
12:37:34,915 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:157)
12:37:34,915 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:264)
12:37:34,915 ERROR [stderr] (http-/127.0.0.1:8080-3) ... 18 more
12:37:34,915 ERROR [stderr] (http-/127.0.0.1:8080-3) Caused by: java.sql.SQLException: Column 'salary' not found.
12:37:34,915 ERROR [stderr] (http-/127.0.0.1:8080-3) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1086)
12:37:34,915 ERROR [stderr] (http-/127.0.0.1:8080-3) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
12:37:34,915 ERROR [stderr] (http-/127.0.0.1:8080-3) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at com.mysql.jdbc.ResultSetImpl.findColumn(ResultSetImpl.java:1163)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5729)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.jboss.jca.adapters.jdbc.WrappedResultSet.getString(WrappedResultSet.java:1381)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.type.descriptor.sql.VarcharTypeDescriptor$2.doExtract(VarcharTypeDescriptor.java:66)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.type.descriptor.sql.BasicExtractor.extract(BasicExtractor.java:65)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:261)
12:37:34,916 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:257)
12:37:34,917 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.type.AbstractStandardBasicType.nullSafeGet(AbstractStandardBasicType.java:247)
12:37:34,917 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.type.AbstractStandardBasicType.hydrate(AbstractStandardBasicType.java:332)
12:37:34,917 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:2903)
12:37:34,917 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.loadFromResultSet(Loader.java:1668)
12:37:34,917 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1600)
12:37:34,917 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.getRow(Loader.java:1500)
12:37:34,917 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:712)
12:37:34,918 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.processResultSet(Loader.java:940)
12:37:34,918 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.doQuery(Loader.java:910)
12:37:34,918 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:341)
12:37:34,918 ERROR [stderr] (http-/127.0.0.1:8080-3) at org.hibernate.loader.Loader.doList(Loader.java:2516)
12:37:34,918 ERROR [stderr] (http-/127.0.0.1:8080-3) ... 26 more
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 6.x
- Java Persistance API (JPA)
- 2.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.