Hi,
I have just been trying to set up Roller 2.0 on a Windows XP system using
Sun's JDK 5, Tomcat 5.5 and DB2 UDB version 8 (with the
COM.ibm.db2.jdbc.app.DB2Driver)...
There have been a few hiccups along the way, and I have been able to resolve
most of them - but now I think I might have found a problem. I am getting a
DB error in the roller log (see the error/stacktrace at end of this email).
After some digging around, it appears that problem is related to a DB2
specific query in the HibernateRefererManagerImpl class. I played around
with the SQL query a bit and got it working - at least at the DB2 console.
Looking in the subversion history for this class I noticed that the last
revision of this class made a small change related to the query that is
producing the error: (
http://svn.apache.org/viewcvs.cgi/incubator/roller/trunk/src/org/roller/business/hibernate/HibernateRefererManagerImpl.java?rev=345486&r1=332312&r2=345486&diff_format=h
)
If I use the previous version of that query(from the DB2 console),
everything seems OK. So I guess I am just wondering why that particular
change was made? Is it something to do with the version of DB2 or the driver
that I am using? or is there something else that I am missing...
thanks,
Jeff
ERROR 2006-02-28 12:34:57,390
HibernateRefererManagerImpl:getDaysPopularWebsites - Getting popular
websites
COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0119N An
expression starting with "NAME" specified in a SELECT clause, HAVING clause,
or ORDER BY clause is not specified in the GROUP BY clause or it is in a
SELECT clause, HAVING clause, or ORDER BY clause with a column function and
no GROUP BY clause is specified. SQLSTATE=42803
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(Unknown
Source)
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(Unknown
Source)
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.check_return_code(Unknown
Source)
at COM.ibm.db2.jdbc.app.DB2PreparedStatement.execute2(Unknown
Source)
at COM.ibm.db2.jdbc.app.DB2PreparedStatement.executeQuery(Unknown
Source)
at
org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(
DelegatingPreparedStatement.java:92)
at
org.roller.business.hibernate.HibernateRefererManagerImpl.getDaysPopularWebsites
(HibernateRefererManagerImpl.java:228)
at
org.roller.presentation.MainPageAction$MainPageData.getPopularWebsites(
MainPageAction.java:88)
at org.apache.jsp.main_jsp._jspService(org.apache.jsp.main_jsp:163)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java
:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.apache.catalina.core.ApplicationDispatcher.invoke(
ApplicationDispatcher.java:672)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(
ApplicationDispatcher.java:574)
at org.apache.catalina.core.ApplicationDispatcher.include(
ApplicationDispatcher.java:499)
at org.apache.jasper.runtime.JspRuntimeLibrary.include(
JspRuntimeLibrary.java:966)
at org.apache.jasper.runtime.PageContextImpl.include(
PageContextImpl.java:614)
at org.apache.struts.tiles.TilesUtilImpl.doInclude(
TilesUtilImpl.java:101)
at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:137)
at org.apache.struts.taglib.tiles.InsertTag.doInclude(InsertTag.java
:758)
at org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTag(
InsertTag.java:890)
at org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java
:460)
at
org.apache.jsp.theme.tiles_002dfrontpage_jsp._jspx_meth_tiles_insert_5(
org.apache.jsp.theme.tiles_002dfrontpage_jsp:490)
at org.apache.jsp.theme.tiles_002dfrontpage_jsp._jspService(
org.apache.jsp.theme.tiles_002dfrontpage_jsp:199)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java
:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.roller.presentation.filters.PersistenceSessionFilter.doFilter
(PersistenceSessionFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.roller.presentation.filters.CharEncodingFilter.doFilter(
CharEncodingFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.apache.catalina.core.ApplicationDispatcher.invoke(
ApplicationDispatcher.java:672)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(
ApplicationDispatcher.java:463)
at org.apache.catalina.core.ApplicationDispatcher.doForward(
ApplicationDispatcher.java:398)
at org.apache.catalina.core.ApplicationDispatcher.forward(
ApplicationDispatcher.java:301)
at org.apache.struts.action.RequestProcessor.doForward(
RequestProcessor.java:1056)
at org.apache.struts.tiles.TilesRequestProcessor.doForward(
TilesRequestProcessor.java:261)
at
org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(
TilesRequestProcessor.java:237)
at
org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(
TilesRequestProcessor.java:300)
at org.apache.struts.action.RequestProcessor.process(
RequestProcessor.java:231)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java
:1164)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java
:397)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.roller.presentation.filters.PersistenceSessionFilter.doFilter
(PersistenceSessionFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.roller.presentation.filters.CharEncodingFilter.doFilter(
CharEncodingFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.apache.catalina.core.ApplicationDispatcher.invoke(
ApplicationDispatcher.java:672)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(
ApplicationDispatcher.java:463)
at org.apache.catalina.core.ApplicationDispatcher.doForward(
ApplicationDispatcher.java:398)
at org.apache.catalina.core.ApplicationDispatcher.forward(
ApplicationDispatcher.java:301)
at org.apache.jasper.runtime.PageContextImpl.doForward(
PageContextImpl.java:703)
at org.apache.jasper.runtime.PageContextImpl.forward(
PageContextImpl.java:670)
at org.apache.jsp.index_jsp._jspService(org.apache.jsp.index_jsp:46)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java
:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.roller.presentation.filters.PersistenceSessionFilter.doFilter
(PersistenceSessionFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.roller.presentation.filters.SchemeEnforcementFilter.doFilter(
SchemeEnforcementFilter.java:97)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.roller.presentation.filters.CharEncodingFilter.doFilter(
CharEncodingFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:178)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
AuthenticatorBase.java:432)
at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(
Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
(Http11BaseProtocol.java:667)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(
LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)