type Exception report
message executing PreparedStatementCallback; bad SQL grammar [SELECT * FROM ( SELECT (ROW_NUMBER() OVER()) AS RNUM, A.* FROM ( SELECT ID, ACADEMY_ID, USERID, WRITER, TITLE, CONTENT, HIT, ISBOLD, ISNOTICE, NOTICE_ID, REGDATE FROM ACADEMY_NOTICE WHERE ACADEMY_ID = ? ORDER BY ISNOTICE DESC, ID DESC ) A ) WHERE RNUM BETWEEN ? AND ?]; nested exception is org.postgresql.util.PSQLException: ERROR: subquery in FROM must have an alias
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.springframework.jdbc.BadSqlGrammarException: executing PreparedStatementCallback; bad SQL grammar [SELECT * FROM ( SELECT (ROW_NUMBER() OVER()) AS RNUM, A.* FROM ( SELECT ID, ACADEMY_ID, USERID, WRITER, TITLE, CONTENT, HIT, ISBOLD, ISNOTICE, NOTICE_ID, REGDATE FROM ACADEMY_NOTICE WHERE ACADEMY_ID = ? ORDER BY ISNOTICE DESC, ID DESC ) A ) WHERE RNUM BETWEEN ? AND ?]; nested exception is org.postgresql.util.PSQLException: ERROR: subquery in FROM must have an alias Hint: For example, FROM (SELECT ...) [AS] foo. Position: 15 org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.translate(SQLErrorCodeSQLExceptionTranslator.java:223) org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:456) org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:491) org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:522) org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:543) org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:114) org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:124) com.readingtown.board.dao.AcademyNoticeDAO.selectList(AcademyNoticeDAO.java:77) com.readingtown.board.service.AcademyNoticeService.selectList(AcademyNoticeService.java:103) com.readingtown.board.service.AcademyNoticeService$$FastClassByCGLIB$$665d1cf.invoke(<generated>) net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149) org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:661) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:57) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144) com.readingtown.advice.TraceAdvice.invoke(TraceAdvice.java:34) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144) org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:118) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144) org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:606) com.readingtown.board.service.AcademyNoticeService$$EnhancerByCGLIB$$a7f9b5e.selectList(<generated>) com.readingtown.board.control.AcademyNoticeController.list(AcademyNoticeController.java:82) sun.reflect.GeneratedMethodAccessor376.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:483) org.springframework.web.servlet.mvc.multiaction.MultiActionController.invokeNamedMethod(MultiActionController.java:351) org.springframework.web.servlet.mvc.multiaction.MultiActionController.handleRequestInternal(MultiActionController.java:305) org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:128) org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625) org.springframework.web.servlet.FrameworkServlet.serviceWrapper(FrameworkServlet.java:386) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:346) javax.servlet.http.HttpServlet.service(HttpServlet.java:620) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) com.readingtown.filter.EncodingFilter.doFilter(EncodingFilter.java:33)
root cause
org.postgresql.util.PSQLException: ERROR: subquery in FROM must have an alias Hint: For example, FROM (SELECT ...) [AS] foo. Position: 15 org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103) org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836) org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257) org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:512) org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388) org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273) org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92) org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:504) org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:450) org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:491) org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:522) org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:543) org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:114) org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:124) com.readingtown.board.dao.AcademyNoticeDAO.selectList(AcademyNoticeDAO.java:77) com.readingtown.board.service.AcademyNoticeService.selectList(AcademyNoticeService.java:103) com.readingtown.board.service.AcademyNoticeService$$FastClassByCGLIB$$665d1cf.invoke(<generated>) net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149) org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:661) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:57) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144) com.readingtown.advice.TraceAdvice.invoke(TraceAdvice.java:34) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144) org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:118) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144) org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:606) com.readingtown.board.service.AcademyNoticeService$$EnhancerByCGLIB$$a7f9b5e.selectList(<generated>) com.readingtown.board.control.AcademyNoticeController.list(AcademyNoticeController.java:82) sun.reflect.GeneratedMethodAccessor376.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:483) org.springframework.web.servlet.mvc.multiaction.MultiActionController.invokeNamedMethod(MultiActionController.java:351) org.springframework.web.servlet.mvc.multiaction.MultiActionController.handleRequestInternal(MultiActionController.java:305) org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:128) org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625) org.springframework.web.servlet.FrameworkServlet.serviceWrapper(FrameworkServlet.java:386) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:346) javax.servlet.http.HttpServlet.service(HttpServlet.java:620) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) com.readingtown.filter.EncodingFilter.doFilter(EncodingFilter.java:33)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.56 logs.