Today, while doing some Grails development I came across a peculiar issue that perplexed me and I’m documenting it for all others to benefit. (Also see my other blog from today for the issue that started this journey).
Here are my specifications:
java version “1.6.0_24” Java(TM) SE Runtime Environment (build 1.6.0_24-b07) Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02, mixed mode)
Tomcat - apache-tomcat64-6.0.32
Local Deployment Server
I’m sure if you have been developing with Java and Tomcat for sometime, you are likely to run into the infamous debug error.
SEVERE: Error listenerStart
You will most likely start Googling it trying to find out what the heck is going on. And in trying to see the extended logging on what that “listenerStart” error means. After some lucky searches, you will see links asking you to drop a “log4j.
Sometimes (when your are developing) you may want to force fetching all content fresh all the time including images, resources such as style sheet etc. To facilitate this you can do the following:
Open a new window or tab in Firefox.
Type about:config in the address bar.
Search for “cache” in the search bar and look for network.http.use-cache in the filtered results.
Double-click it will toggle it from “true” to “false”.
The answer is a lot simpler than you think. But before we explore the answer, I should warn you that this approach is not what is recommended by Maven. Maven builds upon consistency and structure and this process goes away from that methodology. In Maven, you can take each of your jars\libraries and add them to your local repository and then include them as needed in your projects. If you want to go the proper route here’s how you do it.