When we began creating an application using Struts2 framework with Hibernate and MySQL, we ran into a problem which was related to MySQL timing out its connection after a span of 8 hours when left unused. It conceived a lot of time at our end but we were able to nail down the issue at the end.
Steps that we had taken to correct the issue related to Hibernate MySql connection timeout problem are listed below
– Download Hibernate C3P0 and copy .jar files
– Set c3p0.properties
– Make changes to hibernate.cfg.xml
– Test MySQL connection timeout
– Hibernate, MySQL connection timeout related error messages
Below set of steps involve setting up Tomcat 6 on CentOS 5 with Java 1.6
Download Apache Tomcat
$ wget http://apache.parentingamerica.com/tomcat/tomcat-6/v6.0.36/bin/apache-tomcat-6.0.36.tar.gz
Go to opt/ folder and extract Tomcat
$ cd /opt
$ tar -xzf apache-tomcat-6.0.36.tar.gz
Create a tomcat user
$ useradd -d /opt/apache-tomcat-6.0.36/ tomcatuser
Change user permission on tomcat folder
$ chown -R tomcatuser:tomcatuser apache-tomcat-6.0.36
At the time of writing this article Java 6 (update 37) was available at http://www.java.com/en/download/manual_v6.jsp
First set up a folder where you want to install java
$ cd /opt
$ wget http://download.oracle.com/otn-pub/java/jdk/6u37-b06/jdk-6u37-linux-x64-rpm.bin
$ chmod +x jdk-6u37-linux-x64-rpm.bin
To check the current installation of java
$ rpm -qa | grep jre
$ rpm -qa | grep jdk
$ rpm -qa | grep openjdk
To remove the java installs
$ yum erase jre jdk openjdk
This error pops up when you try to stop the Tomcat server when the server has not started. If you restart the Tomcat server, the error vanishes.
Main is a static code block and to call a method within the same class you need to declare the other method also as static if you would want to execute the method during run time without instantiating it as an object.
Static methods are class methods and the methods without static keyword in them are instance methods.
– Buffered reader reads text from a character input stream and buffers those characters
– Buffered reader has a buffer size of 8 KB
– Buffered reader is synchronized and can be safely called from multiple threads
– To parse for primitive data types additional functions needs to be called
– Scanner breaks down input into tokens and translates individual tokens according to their data type
– Scanner has a buffer size of 1KB
– Scanner is not synchronized
– Scanner can parse for primitive types and strings using regular expressions
A JAVA program file can only contain one public java class and this should be named the same as the java file itself.
There can be any number of classes with / without other modifiers.
Classes without any modifiers will get compiled even if the name of the class does not match the name of the java program file.
If a user role and his credentials are not set or is incorrect for Tomcat startup via NetBeans IDE you will get this dialog box opened
i) First check the Netbeans configuration settings Open Tools > Server
ii) Base path for Catalina will be set in the General tab andn it will be of the form \CATALINA_BASE\conf\tomcat-users.xml. Check if a user and his role is defined as stated in the below syntax. If not add these lines
<user username=”tomcat” password=”secured” roles=”manager”/>
iii) In Tools > Server > General tab enter the username and password stated in the tomcat-users.xml file and this will stop the Netbeans IDE from asking you the name and password