Ok, dit wordt een wat vaag verhaal, ik betwijfel dat jullie er ook maar iets zinnigs over kunnen zeggen maar jullie zijn m'n laatste hoop 
Ik ben bezig met Java Servlets, die test ik thuis onder Resin. Ik maak gebruik van een database connection pool die ik ergens gedownload heb maar inmiddels compleet begrijp. Een van de methoden van deze connectionpool is getConnection(), in mijn hele servlet wordt deze maar 1 keer aangeroepen, niet in een lus, gewoon los midden in.
Het viel mij op dat soms als ik de pagina aanriep deze methode twee keer aangeroepen wordt. Maar nadat ik getConnection aanroep roep ik altijd ook releaseConnection aan om de connectie weer vrij te geven. Ik besloot de aanroepen te loggen, ik laat nu in een tekstbestand schrijven wanneer welke methode aangeroepen wordt. Daar komt iets heel vreemds uit.
In mijn programma worden de methoden grofweg zo aangroepen
Dit fragment komt 1 keer voor, niet in een lus. Nu vind ik soms in mijn log bestand dit:
terwijl ik dus 100% zeker weet dat ik aan het eind geen getConnection() aanroep, ik heb wel 100 keer Editplus alle sourcefiles laten doorzoeken op getConnection(), maar deze Servlet is echt de enige waar het aangeroepen wordt.
Kortom: Ik ben ten einde raad. Is dit een bug in Resin, heeft iemand zoiets ooit meegemaakt? Heeft iemand een idee wat nu verder te doen?
Ik ben bezig met Java Servlets, die test ik thuis onder Resin. Ik maak gebruik van een database connection pool die ik ergens gedownload heb maar inmiddels compleet begrijp. Een van de methoden van deze connectionpool is getConnection(), in mijn hele servlet wordt deze maar 1 keer aangeroepen, niet in een lus, gewoon los midden in.
Het viel mij op dat soms als ik de pagina aanriep deze methode twee keer aangeroepen wordt. Maar nadat ik getConnection aanroep roep ik altijd ook releaseConnection aan om de connectie weer vrij te geven. Ik besloot de aanroepen te loggen, ik laat nu in een tekstbestand schrijven wanneer welke methode aangeroepen wordt. Daar komt iets heel vreemds uit.
In mijn programma worden de methoden grofweg zo aangroepen
code:
1
2
3
| Connection conn = pool.getConnection(); // bla bla bla pool.releaseConnection(conn); |
Dit fragment komt 1 keer voor, niet in een lus. Nu vind ik soms in mijn log bestand dit:
code:
1
2
3
| getConnection() was called releaseConnection() was called getConnection() was called |
terwijl ik dus 100% zeker weet dat ik aan het eind geen getConnection() aanroep, ik heb wel 100 keer Editplus alle sourcefiles laten doorzoeken op getConnection(), maar deze Servlet is echt de enige waar het aangeroepen wordt.
Kortom: Ik ben ten einde raad. Is dit een bug in Resin, heeft iemand zoiets ooit meegemaakt? Heeft iemand een idee wat nu verder te doen?