| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2010 15:19:24
|
walacy
JavaTeenager
![[Avatar]](/images/avatar/d9f4cbe3a1761c4c9ee56f6220861560.jpg)
Membro desde: 31/12/2009 15:31:39
Mensagens: 161
Localização: Brasília - DF
Offline
|
Ola pessoal,
Estou tendo problemas com DynaActionFrom do Struts 1.3.5...
Usei o MessAdmin e obtive os dados abaixo:
Attribute size ----- Attribute name ----------------------------------------- Attribute value
75.12 KB ------------- voSessao.2430c191b063014faa760f7c45cfb833----- ...VoSessao@a594e1
48 B ------------------ isRequisitosVerificados -------------------------------- true
25.61 MB ------------- EntradaSaldoConsolidado ---------------------------- DynaActionForm[dynaClass=EntradaSaldoConsolidado,codigoGrupo=]
156 B ----------------- org.apache.struts.action.LOCALE -------------------- pt_BR
Alguém que já tenha passado por isso saberia como resolver?
Para cada novo DynaActionForm o anterior não está sendo removido...
This message was edited 1 time. Last update was at 25/06/2010 15:21:19
|
Manoel Walacy
SCJP 6
walacy@gmail.com
  |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2010 15:51:38
|
joao.junior
JavaBaby
![[Avatar]](/images/avatar/a2f94d8e28139ce8120147d24fe3b8f6.jpg)
Membro desde: 20/04/2006 08:34:21
Mensagens: 75
Localização: Goiás
Offline
|
Olá,
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.
|
@joaojuniorcruz |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2010 15:57:10
|
walacy
JavaTeenager
![[Avatar]](/images/avatar/d9f4cbe3a1761c4c9ee56f6220861560.jpg)
Membro desde: 31/12/2009 15:31:39
Mensagens: 161
Localização: Brasília - DF
Offline
|
O problema aqui é que todos os DynaAction são criados com o mesmo tamanho e com pelo menos 23mb...
Olha só o estado da memória agora:
Attribute size ----- Attribute name -------------- Attribute value
26.41 MB ---------- EntradaPendente ----------- DynaActionForm[dynaClass=EntradaPendent ... tipoConsulta=]
48 B --------------- isRequisitosVerificados ----- true
26.41 MB ---------- Entrada852i04 -------------- DynaActionForm[dynaClass=Entr ... =,ramal=,valorReceita=]
26.41 MB ---------- EntradaSaldoConsolidado - DynaActionForm[dynaClass=EntradaSaldoConsolidado,codigoGrupo=]
70.57 KB ---------- voSessao.7d92735b ------- VoSessao@15390b7
156 B -------------- LOCALE ---------------------- pt_BR
This message was edited 1 time. Last update was at 25/06/2010 16:18:34
|
Manoel Walacy
SCJP 6
walacy@gmail.com
  |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2010 16:15:49
|
joao.junior
JavaBaby
![[Avatar]](/images/avatar/a2f94d8e28139ce8120147d24fe3b8f6.jpg)
Membro desde: 20/04/2006 08:34:21
Mensagens: 75
Localização: Goiás
Offline
|
Estranho isso, o numero de registro com os quais você popula o dynaaction é igual ? Você esta setando na session ?
|
@joaojuniorcruz |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2010 16:20:25
|
walacy
JavaTeenager
![[Avatar]](/images/avatar/d9f4cbe3a1761c4c9ee56f6220861560.jpg)
Membro desde: 31/12/2009 15:31:39
Mensagens: 161
Localização: Brasília - DF
Offline
|
joao.junior wrote:Estranho isso, o numero de registro com os quais você popula o dynaaction é igual ? Você esta setando na session ?
É 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á...
O problema é que os objetos não somem da memoria...
|
Manoel Walacy
SCJP 6
walacy@gmail.com
  |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2010 16:36:40
|
joao.junior
JavaBaby
![[Avatar]](/images/avatar/a2f94d8e28139ce8120147d24fe3b8f6.jpg)
Membro desde: 20/04/2006 08:34:21
Mensagens: 75
Localização: Goiás
Offline
|
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.
Veja estes links:
http://www.junlu.com/msg/221181.html
http://struts.apache.org/1.1/api/org/apache/struts/action/DynaActionForm.html#reset%28org.apache.struts.action.ActionMapping,%20javax.servlet.ServletRequest%29
http://struts.apache.org/1.1/api/org/apache/struts/action/DynaActionForm.html
http://www.google.com.br/#hl=pt-BR&source=hp&q=How+to+clear+DynaAction&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=de9517c7db49970a
|
@joaojuniorcruz |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2010 16:46:09
|
walacy
JavaTeenager
![[Avatar]](/images/avatar/d9f4cbe3a1761c4c9ee56f6220861560.jpg)
Membro desde: 31/12/2009 15:31:39
Mensagens: 161
Localização: Brasília - DF
Offline
|
Obrigado cara, vou dar uma olhada...
|
Manoel Walacy
SCJP 6
walacy@gmail.com
  |
|
|
 |
|
|