• Welcome to KonaKart Community Forum. Please login or sign up.
 

After Tomcat restart, Cannot find bean: "konakartKey" in any scope

Started by fizzlepop, August 23, 2011, 09:44:27 am

Previous topic - Next topic

fizzlepop

I have been running KonaKart Community Edition 4.2.0.1 for over a year without problems.  Using JDK 6 and Tomcat 6. My hosting provider is dailyrazor.net and the database version is MySQL 5.1.56.

After having some issues reaching my website, the hosting company restarted Tomcat.  Now, konakart displays this error when trying to view the root index.jsp/welcome page.  I have tried stopping/restarting tomcat, deleting the work directory, and even re-deploying the konakart.war, but I always receive this exception:


javax.servlet.jsp.JspException: Cannot find bean: "konakartKey" in any scope
org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:935)
org.apache.struts.taglib.bean.DefineTag.doEndTag(DefineTag.java:230)
org.apache.jsp.WEB_002dINF.jsp.MainLayout_jsp._jspService(MainLayout_jsp.java:79)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:239)
org.apache.struts.tiles.TilesRequestProcessor.internalModuleRelativeForward(TilesRequestProcessor.java:341)
org.apache.struts.action.RequestProcessor.processForward(RequestProcessor.java:572)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:221)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


Looking in the konakart logs, I see this exception, repeated over and over again:


23-Aug 02:11:07 ERROR (?:handleException:?) com.konakart.al.KKAppException: There has been an exception in the ConfigCacheUpdater
at com.konakart.al.ConfigCacheUpdater.handleException(Unknown Source)
at com.konakart.al.ConfigCacheUpdater.run(Unknown Source)
Caused by: com.konakart.app.KKException: org.apache.torque.TorqueException: java.sql.SQLException: Prepared statement needs to be re-prepared
at com.konakart.app.KKEng.getTempCustomerId(Unknown Source)
at com.konakart.al.CustomerMgr.createGuest(Unknown Source)
at com.konakart.al.KKAppEng.init(Unknown Source)
at com.konakart.al.KKAppEng.<init>(Unknown Source)
at com.konakart.al.ConfigCacheUpdater.getClientEng(Unknown Source)
at com.konakart.al.ConfigCacheUpdater.updateConfigs(Unknown Source)
... 1 more
Caused by: org.apache.torque.TorqueException: java.sql.SQLException: Prepared statement needs to be re-prepared
at org.apache.torque.util.BasePeer.throwTorqueException(BasePeer.java:109)
at org.apache.torque.util.BasePeer.insertOrUpdateRecord(BasePeer.java:688)
at org.apache.torque.util.BasePeer.doInsert(BasePeer.java:554)
at org.apache.torque.util.BasePeer.doInsert(BasePeer.java:431)
at com.konakart.bl.CustomerMgr.getTempCustomerId(Unknown Source)
... 7 more
Caused by: java.sql.SQLException: Prepared statement needs to be re-prepared
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1169)
at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:693)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1404)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1318)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1303)
at com.workingdogs.village.Record.saveWithInsert(Record.java:438)
at com.workingdogs.village.Record.save(Record.java:234)
at com.workingdogs.village.Record.save(Record.java:201)
at org.apache.torque.util.BasePeer.insertOrUpdateRecord(BasePeer.java:685)
... 10 more


What could be causing this error?  Any help or suggestions are appreciated in helping me track down the cause of this issue, since the company website is no longer functioning.  Thanks.

DispatchMediaGroup

I'm not sure what the root cause is, but it does look like this is a database server issue.  See the references below:

http://dev.mysql.com/doc/refman/5.1/en/statement-repreparation.html
http://bugs.mysql.com/bug.php?id=42041

Also, some people have reported that upping the value of table_definition_cache and table_open_cache may help assuage the issue.

fizzlepop

I am now thinking this has nothing to do with the server restart, and the site was the victim of a hacker attack. At this point I have no proof, but I did notice some spam customer accounts created just the day before I noticed the problem.