20030602 Monday June 02, 2003

Tabbed Menus - now with DHTML! I did some work this evening to adapt Adam Kalsey's Tabbed Menu demo to fit my own design. He simply changes the <body>'s class based on which tag the user has clicked on. While this seems reasonable, I'd rather do the menu-selection on the client-side. This allows a developer to integrate this menu into their app with no server-side coding needed. So here's a demo with a client-side (DHTML) method of selecting menus. Clicking on an item just sets a cookie and then reloads the page.

This client-side approach should make it much easier to integrate this menu into struts-menu. Posted in The Web at Jun 02 2003, 07:25:14 PM MDT 7 Comments

Tomcat/Oracle Connectivity Problems I had a problem that I thought I fixed a while back. The problem was that our firewall between Tomcat and Oracle would close our database connection after 90 minutes of inactivity. We first solved this problem by using a Servlet/Ant Task/cron job combination to ping and use the DBCP connection pool we'd configured in Tomcat. This worked, for a little while. Then we realized we had to also ping the JDBCRealm, so we used a login test (via WebTest) and added this to our Ant Task/cron job. Again, this worked for a couple of months, until a QA Expert came on board and starting using WAPT to load test our app. Then we began having issues with many connections being opened (20+), then they were closed by the firewall, and when the app would try to re-use these connections, they wouldn't respond, and the app would enter into the "dithering idiot" mode. We finally figured out a solution, rather than workarounds, and here it is:

// In the file:
$ORACLE_HOME/network/Admin/SQLNET.ORA

// Add the following line to check every 10 minutes
SQLNET.EXPIRE_TIME=10

Posted in Java at Jun 02 2003, 09:25:58 AM MDT Add a Comment