tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Veselin Kovacevic" <v...@promonte.com>
Subject RE: Problem with ConnectionPool on Linux
Date Wed, 12 Nov 2003 08:11:20 GMT
We using MySQL for some features in application (login, roles, look and
feel...) not for data. Before we use Oracle for all, but now we try to
seperate "features" data from real data for better performance. It's
corporate application, so nobody use them at night and we have not any
job or activity on DB several hours. 
Anyway, we added autoReconnect in server.xml for connecting pool and
everything working fine.

Thanks Steph.


-----Original Message-----
From: Steph Richardson [mailto:steph@kvasar.com] 
Sent: Tuesday, November 11, 2003 4:56 PM
To: Tomcat Users List
Subject: RE: Problem with ConnectionPool on Linux



My guess is you have some kind of job that runs at night that kicks or
restarts your dB server ?? See if restarting your MySQL server in the
middle of the day produces the same results. Anyway to make DBCP
tolerant of the database dissapearing, try adding autoReconnect=true to
your jdbc url. As in :

jdbc:mysql://127.0.0.1:3306/mydb?autoReconnect=true





> -----Original Message-----
> From: Veselin Kovacevic [mailto:veso@promonte.com]
> Sent: Tuesday, November 11, 2003 4:57 AM
> To: tomcat-user@jakarta.apache.org
> Subject: Problem with ConnectionPool on Linux
> 
> 
> Hi,
> 
> I have o problem with Tomcat 4.1.24 on SuseLinux7.3. Our application 
> has Controller servlet (below) where using connection objects from 
> connection pool. When tomcat started, application working fine and 
> everything OK that day. But next day when we try to start application 
> we get error message in isUser method (PortalUserDB class). It's first

> place where we use connection object in application. Method isUser is 
> very simple method for authenticate user (below). We get this 
> exception: SQL Exception:java.sql.SQLException: No operations allowed 
> after connection closed
> 
> Connection object is not null in this case, and this message for me is

> not correct. Next, if I restart tomcat, everything working ok... (for 
> next day).
> 
> On windows (we using windows for development platform) we have not 
> this problem.
> 
> What is problem?
> Is configuration server.xml or similar configuration files on Linux
> different rather on windows?
> 
> Note:
> On both platform we using Tomcat 4.1.24 and j2sdk1.4.1_03.
> 
> 
> public class Controller extends HttpServlet {	
> 
> 	private DataSource ds;
> 	
> 	public void init(ServletConfig config) throws ServletException {
> 		super.init(config);
> 		try {
> 			InitialContext initCtx = new InitialContext();
> 			Context envCtx =
> (Context)initCtx.lookup("java:comp/env"); 
> 			ds =
> (DataSource)envCtx.lookup("jdbc/MySQLPool");
> 		} catch (Exception e){
> 			throw new UnavailableException(e.getMessage());
> 		}
> 	}
> 	
> 	public void doGet(HttpServletRequest request,
HttpServletResponse 
> response)
> 					  throws IOException,
> ServletException {
> 		
> 		request.setCharacterEncoding("iso-8859-2");
> 		
> 		........................
> 		........................
> 
> 		if (ds != null) {
> 		Connection conn = ds.getConnection();
> 			if (conn != null) {
> 				boolean isUserExists =
> PortalUserDB.isUser(conn, userName, userPass);
> 					........................
> 					........................	
> 				conn.close();
> 			}
> 		........................
> 		........................
> 
> 	}
> }
> 
> public static boolean isUser(Connection conn, String userName, String
> userPass)
> 	throws SQLException, IOException {
> 
> 	String query = "SELECT user_name FROM admin_user " +
> 				   "WHERE user_name = ? " +
> 				   		"AND user_pass = ?";
> 				   		
> 	boolean isUserExists = false;
> 		
> 	try {
> 		PreparedStatement pstmt = conn.prepareStatement(query);
> 		pstmt.setString(1, userName);
> 		pstmt.setString(2, userPass);
> 		
> 		ResultSet rs = pstmt.executeQuery();
> 	
> 		isUserExists = rs.next();
> 	
> 		rs.close();
> 		rs = null;
> 		pstmt.close();
> 		pstmt = null;
> 		
> 	} catch (SQLException sqle) {
> 		PortalLog.addLogLine("Class: PortalUserDB, Method:
> isUser. SQL Exception:" + sqle, userName);
> 	}
> 	
> 	return isUserExists;
> }
> 
> Thanks,
> Veso
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
> 
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Mime
View raw message