Il giorno 22/giu/07, alle ore 19:20, Musachy Barroso ha scritto:

Yes, freemarker is used by Struts 2 tags to generate html. We could have a property for the cache setting, but, does it solve your problem? (you said
it was partially resolved)


Most of the garbage is still there but at least about 400-500 MB generated from freemarker classes seems not there anymore. I tried to use jrockit instead of sun jvm since it has a better memory analyzer but I haven't been able to produce a report yet.


May I ask more on how struts2 is using freemarker ?
How is freemarker used in a code snippet like this :

<td width="34%" valign="bottom" class="fontNormale" align="center">
                <span>
<s:form name="RicercaArticoliVisOrdina" action="RicercaArticoliVis"> Ordina per <s:select list="% {listaOrdinamentoArticoli}" value="${numeri.ordinamento[0]}" name="ordinamento" onchange="document.RicercaArticoliVisOrdina.submit ()"/> <s:hidden name="idRicerca" value="$ {numeri.idRicerca}"/>
                    </s:form>
                </span>
            </td>
<td width="33%" valign="bottom" class="fontNormale" align="right">
                <span>
<s:form name="RicercaArticoliVisDimPagina" action="RicercaArticoliVis"> Mostra <s:select list="{5, 10, 20, 30}" value="${numeri.dimPagina}" name="dimPagina" onchange="document.RicercaArticoliVisDimPagina.submit()"/> prodotti per pagina <s:hidden name="idRicerca" value="$ {numeri.idRicerca}"/>
                    </s:form>
                </span>
            </td>

What object are created ?

Thanks











regards
musachy

On 6/20/07, Ing. Andrea Vettori <[EMAIL PROTECTED]> wrote:

I discussed the problem with the freemarker team and I used a
suggestion that PARTIALLY resolved.

They said :

=====

You can use the code below to enable the model cache, assuming
"myConfiguration" is the reference to your Configuration object:

((BeansWrapper)myConfiguration.getObjectWrapper()).setUseCache(true)

and see if it helps you with your GC load levels.

=====

This actually seems to happen.
In struts how can this be done ? I used :


         freemarker.template.Configuration fmc =
(freemarker.template.Configuration)
ServletActionContext.getServletContext().getAttribute
(FreemarkerManager.CONFIG_SERVLET_CONTEXT_KEY);
         if (fmc != null) {
             ((freemarker.ext.beans.BeansWrapper)fmc.getObjectWrapper
()).setUseCache(true);
         }


but I think there must be a configuration somewhere
(struts.properties?).


To completely solve my problem I really need to understand the
following :

How struts uses freemarker ? If i have a jsp page that contains html,
jsp tags, struts tags and jsp EL expression, where freemarker is used ?
I suppose that it's used ONLY on struts tags...

So if my page is composed primarly of jsp EL and jsp tags and a few
struts tags can I focus on struts tags only to try to understand why
the app is producing garbage ?


Thank you



Il giorno 19/giu/07, alle ore 12:58, Ing. Andrea Vettori ha scritto:

>
> Il giorno 19/giu/07, alle ore 12:07, Antonio Petrelli ha scritto:
>
>> 2007/6/19, Ing. Andrea Vettori <[EMAIL PROTECTED]>:
>>>
>>> Moreover I'm not using freemaker in my project! It's struts that's
>>> using it.
>>> My page are all jsps !!
>>
>>
>>
>> This is pretty strange... Is FreeMarker servlet declared in your
>> web.xml?
>
> No it's not.
>
> I think that freemarker classes are used by struts internally for
> the themes... I use the simple theme.
>
> I really can't understand what's producing near 2GB of garbage
> every 10 seconds!
>
>
> --
> Ing. Andrea Vettori
> Consulente per l'Information Technology
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>

--
Ing. Andrea Vettori
Consulente per l'Information Technology



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
"Hey you! Would you help me to carry the stone?" Pink Floyd

--
Ing. Andrea Vettori
Consulente per l'Information Technology



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to