O DynaAction consome muita memoria mesmo, o ideal é “Apreciar com Moderação”, principalmente se você esta usando para fazer telas Grid com muitos registros, com edição de varios campos. No meu caso aqui, reduzi o numero de telas com grid usando DynaAction e onde eu ainda utilizo trabalho com vector na session, ao sair do programa faço a remoção do Vector imediatamente da Session. Consegui reduzir significativamente o consumo de memoria no meu sistema aqui.
É o DynaAction que o Struts cria…
Todos saem com o mesmo tamanho…
Tô pensando que tem a ver com um extends…
todas estendem uma outra classe… deve ter algum objeto gigante lá…
Certo, com certeza tem algo sim, objetos do mesmo tamanho. Sem visualizar o contexto em que se aplica estas classes fica é meio sem jeito de opinar.
Você tem que fazer um Reset no Map do DynaAction, quando não for usar mais ele, pelo que entendi o Objeto do DynaAction perdura na memoria se não for marcado para que o GC remova ele.