Это может быть проблема с вашей веб-инфраструктурой JSF (MyFaces, ICEFaces и т. Д.), Если вы ее используете. Особенно учитывая тот факт, что вы не передислоцируете приложение, но это происходит, когда страницы открываются / закрываются. Я предлагаю вам проверить соответствующий трекер, прежде чем делать больше отладки и профилирования.
Кроме того, вы можете попытаться развернуть приложение на локальном компьютере с намеренно малым пространством кучи и попытаться воспроизвести утечку памяти последовательно, только перемещаясь по веб-страницам приложения. Надеюсь, вы сможете точно понять, какое действие приводит к загрузке новых классов.