> Hi,
>
> My co-worker and I decided to try to debug PermGen problems after
> detailed reading of mailing list archives and Tomcat wiki.
>
> We followed the procedure described at the wiki [1], and got one
> inactive WebappClassLoader (started = false), with 18 GC root paths.
> They are attached to the message (relevant ones). In the attached list
> there isn't a single class developed in-house, but are mostly from
> third-party jars.
>
> The first one, org.postgresql.Driver I think I understand.
>
> postgresql-*.jar is located in Tomcat's lib folder, so it is loaded with
> Tomcat class loader in order to create DB pool. Then, it is used by some
> of webapp libraries, which I guess is OpenJPA. However, I don't have a
> clue how to deregister it. I tried to do it in contextDestroyed of
> registered ServletContextListener, but no success. It seems that I
> cannot access registered drivers from different classloader.
> org.postgresql.Driver is loaded from Tomcat class loader, and
> ServletContextListener is being loaded from webapp class loader, so no
> luck. Any ideas how to clean up the driver on application unload?
if the database is only being referenced by that webapp then put the
postgresql-*.jars into WEB-INF/lib
>
> The second root path is even worse. UploadedFile (which is very simple
> class part of MyFaces) seems to be referenced in static HashTable
> "registry" in class PropertyEditorManager. I can't find who made that
> registration, but I believe it is not in my code. I would like to ask
> developers to fix the problem (or try to fix it myself) but I am unable
> to pin-point what is the cause of the problem. Any ideas with this one?
declare UploadedFile class as @Embeddable class inside PropertyEditorManager
class
http://java.sun.com/javaee/5/docs/api/javax/persistence/Embeddable.html
> Environment: Tomcat 6.0.14, Windows XP SP2.
>
> Regards,
> Ognjen
>
> [1] http://wiki.apache.org/tomcat/OutOfMemory
>
>
> ------
> GC root paths (relevant part):
>
> Paths from "GC Roots" to "Object WebappClassLoader #054435C8"
>
> +----------------------------------------------------------------------
> | Name
> +----------------------------------------------------------------------
> | +---org.apache.catalina.loader.WebappClassLoader
> | |
> | +---<loader> of org.postgresql.Driver
> | | |
> | | +---driverClass of java.sql.DriverInfo
> | | |
> | | +---[1] of java.lang.Object[10]
> | | |
> | | +---elementData of java.util.Vector
> | | |
> | | +---writeDrivers of java.sql.DriverManager [Class]
> | |
> | +---<loader> of org.apache.myfaces.custom.fileupload.UploadedFile
> | | |
> | | +---key of java.util.Hashtable$Entry
> | | |
> | | +---[10] of java.util.Hashtable$Entry[23]
> | | |
> | | +---table of java.util.Hashtable
> | | |
> | | +---registry of java.beans.PropertyEditorManager [Class]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>
_________________________________________________________________
The New Busy is not the old busy. Search, chat and e-mail from your inbox.
http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_3