Seam 2.0.2 CR1 Performance problem
kruno Apr 9, 2008 10:28 AMWhen I change to Seam 2.0.2 CR1 from 2.0.0 GA things start to work very slow, for example same page on 2.0.2 CR1 takes about 3.7 sec, while on 2.0.0 GA only 0.7 sec
here is stackTrace:
2.0.0 GA
10:12:23,936 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :104 - before phase: RESTORE_VIEW 1 10:12:23,937 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.contexts.FacesLifecycle :50 - >>> Begin JSF request 10:12:23,937 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.jsf.SeamPhaseListener :565 - beginning transaction prior to phase: RESTORE_VIEW 1 10:12:23,940 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :173 - after phase: RESTORE_VIEW 1 10:12:23,941 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.core.Manager :491 - Restoring conversation with id: 3 10:12:23,941 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :104 - before phase: APPLY_REQUEST_VALUES 2 10:12:23,966 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :173 - after phase: APPLY_REQUEST_VALUES 2 10:12:23,966 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :104 - before phase: PROCESS_VALIDATIONS 3 10:12:23,988 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :173 - after phase: PROCESS_VALIDATIONS 3 10:12:23,989 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :104 - before phase: UPDATE_MODEL_VALUES 4 10:12:24,014 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :173 - after phase: UPDATE_MODEL_VALUES 4 10:12:24,014 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :104 - before phase: INVOKE_APPLICATION 5 10:12:24,015 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :144 - CISTIM LEVELE PORUKA 10:12:24,018 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :128 - info: false 10:12:24,019 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :129 - warn: false 10:12:24,020 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :130 - error: false 10:12:24,021 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :131 - fatal: false 10:12:24,023 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :162 - ZAHTJEV ZA TRAZI TraziVrstaObradeBean 10:12:24,023 [http-127.0.0.1-8080-1] DEBUG orka.core.util.ParamSelect :40 - Ime parametra: korisnik vrijednost orka.core.maticni.korisnik.Korisnik@60d0bea 10:12:24,024 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :191 - primjeniUvjetTrazenje 10:12:24,025 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :95 - getUvjet(): null 10:12:24,026 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :100 - setUvjet()null 10:12:24,026 [http-127.0.0.1-8080-1] DEBUG orka.core.util.ParamSelect :40 - Ime parametra: akti vrijednost true 10:12:24,027 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :364 - IZBROJI REDOVE SELECT: SELECT DISTINCT count(ent.id) FROM VrstaObrade ent WHERE ent.korisnik=:korisnik AND ent.aktivan=:akti 10:12:24,029 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :172 - BROJ PODATAKA 2 10:12:24,030 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :174 - SELECT : Select ent.id, ent.aktivan, ent.sifra, ent.opis from VrstaObrade ent WHERE ent.korisnik=:korisnik AND ent.aktivan=:akti order by ent.sifra asc 10:12:24,031 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :255 - BROJ POKAZATI 10 10:12:24,032 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :256 - BROJ COUNT 2 10:12:24,032 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :268 - BR STARN 1 10:12:24,033 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :273 - PAGES 1 10:12:24,034 [http-127.0.0.1-8080-1] DEBUG orka.core.FinderBean :299 - FETCH DATA 10:12:24,037 [http-127.0.0.1-8080-1] DEBUG orka.core.view.Fokus :30 - Settiram fokus: forma:selectAktivan 10:12:24,038 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :173 - after phase: INVOKE_APPLICATION 5 10:12:24,038 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.jsf.SeamPhaseListener :581 - committing transaction after phase: INVOKE_APPLICATION 5 10:12:24,039 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.core.Manager :327 - Storing conversation state: 3 10:12:24,040 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.contexts.FacesLifecycle :106 - After render response, destroying contexts 10:12:24,041 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.contexts.FacesLifecycle :125 - <<< End JSF request 10:12:24,046 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :104 - before phase: RESTORE_VIEW 1 10:12:24,047 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.contexts.FacesLifecycle :50 - >>> Begin JSF request 10:12:24,047 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.jsf.SeamPhaseListener :565 - beginning transaction prior to phase: RESTORE_VIEW 1 10:12:24,049 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :173 - after phase: RESTORE_VIEW 1 10:12:24,050 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.core.Manager :491 - Restoring conversation with id: 3 10:12:24,051 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.jsf.SeamPhaseListener :581 - committing transaction after phase: RESTORE_VIEW 1 10:12:24,054 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :104 - before phase: RENDER_RESPONSE 6 10:12:24,054 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.jsf.SeamPhaseListener :565 - beginning transaction prior to phase: RENDER_RESPONSE 6 10:12:24,074 [http-127.0.0.1-8080-1] DEBUG orka.core.postavke.PostavkeAplikacija :78 - OPER orka.core.maticni.operater.Operater@59306da 10:12:24,152 [http-127.0.0.1-8080-1] DEBUG orka.core.view.Fokus :35 - Postavljam fokus: forma:selectAktivan 10:12:24,161 [http-127.0.0.1-8080-1] TRACE org.jboss.seam.jsf.SeamPhaseListener :173 - after phase: RENDER_RESPONSE 6 10:12:24,162 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.jsf.SeamPhaseListener :581 - committing transaction after phase: RENDER_RESPONSE 6 10:12:24,167 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.core.Manager :327 - Storing conversation state: 3 10:12:24,167 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.contexts.FacesLifecycle :106 - After render response, destroying contexts 10:12:24,169 [http-127.0.0.1-8080-1] DEBUG org.jboss.seam.contexts.FacesLifecycle :125 - <<< End JSF request
and this is the same thing on 2.0.2 CR1:
10:15:50,697 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :102 - before phase: RESTORE_VIEW 1 10:15:50,698 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.contexts.FacesLifecycle :50 - >>> Begin JSF request for /kadrovska/place/sifarnici/vrstaObrade/PregledVrstaObrade.orka 10:15:50,698 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.jsf.SeamPhaseListener :586 - beginning transaction prior to phase: RESTORE_VIEW 1 10:15:50,703 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :181 - after phase: RESTORE_VIEW 1 10:15:50,704 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.core.Manager :497 - Restoring conversation with id: 3 10:15:50,705 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :102 - before phase: APPLY_REQUEST_VALUES 2 10:15:51,267 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :181 - after phase: APPLY_REQUEST_VALUES 2 10:15:51,267 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :102 - before phase: PROCESS_VALIDATIONS 3 10:15:51,759 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :181 - after phase: PROCESS_VALIDATIONS 3 10:15:51,760 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :102 - before phase: UPDATE_MODEL_VALUES 4 10:15:52,351 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :181 - after phase: UPDATE_MODEL_VALUES 4 10:15:52,352 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :102 - before phase: INVOKE_APPLICATION 5 10:15:52,353 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :144 - CISTIM LEVELE PORUKA 10:15:52,374 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :128 - info: false 10:15:52,382 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :129 - warn: false 10:15:52,388 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :130 - error: false 10:15:52,395 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :131 - fatal: false 10:15:52,407 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :162 - ZAHTJEV ZA TRAZI TraziVrstaObradeBean 10:15:52,408 [http-127.0.0.1-8080-2] DEBUG orka.core.util.ParamSelect :40 - Ime parametra: korisnik vrijednost orka.core.maticni.korisnik.Korisnik@55855f9 10:15:52,409 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :191 - primjeniUvjetTrazenje 10:15:52,410 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :95 - getUvjet(): null 10:15:52,412 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :100 - setUvjet()null 10:15:52,412 [http-127.0.0.1-8080-2] DEBUG orka.core.util.ParamSelect :40 - Ime parametra: akti vrijednost true 10:15:52,414 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :364 - IZBROJI REDOVE SELECT: SELECT DISTINCT count(ent.id) FROM VrstaObrade ent WHERE ent.korisnik=:korisnik AND ent.aktivan=:akti 10:15:52,417 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :172 - BROJ PODATAKA 2 10:15:52,417 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :174 - SELECT : Select ent.id, ent.aktivan, ent.sifra, ent.opis from VrstaObrade ent WHERE ent.korisnik=:korisnik AND ent.aktivan=:akti order by ent.sifra asc 10:15:52,418 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :255 - BROJ POKAZATI 10 10:15:52,419 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :256 - BROJ COUNT 2 10:15:52,419 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :268 - BR STARN 1 10:15:52,420 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :273 - PAGES 1 10:15:52,421 [http-127.0.0.1-8080-2] DEBUG orka.core.FinderBean :299 - FETCH DATA 10:15:52,448 [http-127.0.0.1-8080-2] DEBUG orka.core.view.Fokus :30 - Settiram fokus: forma:selectAktivan 10:15:52,453 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :181 - after phase: INVOKE_APPLICATION 5 10:15:52,453 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.jsf.SeamPhaseListener :602 - committing transaction after phase: INVOKE_APPLICATION 5 10:15:52,459 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.core.Manager :333 - Storing conversation state: 3 10:15:52,460 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.contexts.FacesLifecycle :106 - After render response, destroying contexts 10:15:52,479 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.contexts.FacesLifecycle :125 - <<< End JSF request for /kadrovska/place/sifarnici/vrstaObrade/PregledVrstaObrade.orka 10:15:52,494 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :102 - before phase: RESTORE_VIEW 1 10:15:52,495 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.contexts.FacesLifecycle :50 - >>> Begin JSF request for /kadrovska/place/sifarnici/vrstaObrade/PregledVrstaObrade.orka 10:15:52,496 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.jsf.SeamPhaseListener :586 - beginning transaction prior to phase: RESTORE_VIEW 1 10:15:52,497 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :181 - after phase: RESTORE_VIEW 1 10:15:52,497 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.core.Manager :497 - Restoring conversation with id: 3 10:15:52,498 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.jsf.SeamPhaseListener :602 - committing transaction after phase: RESTORE_VIEW 1 10:15:52,500 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :102 - before phase: RENDER_RESPONSE 6 10:15:52,500 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.jsf.SeamPhaseListener :586 - beginning transaction prior to phase: RENDER_RESPONSE 6 10:15:52,519 [http-127.0.0.1-8080-2] DEBUG orka.core.postavke.PostavkeAplikacija :78 - OPER orka.core.maticni.operater.Operater@5bc34e6 10:15:53,950 [http-127.0.0.1-8080-2] DEBUG orka.core.view.Fokus :35 - Postavljam fokus: forma:selectAktivan 10:15:53,985 [http-127.0.0.1-8080-2] TRACE org.jboss.seam.jsf.SeamPhaseListener :181 - after phase: RENDER_RESPONSE 6 10:15:53,985 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.jsf.SeamPhaseListener :602 - committing transaction after phase: RENDER_RESPONSE 6 10:15:53,986 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.core.Manager :333 - Storing conversation state: 3 10:15:53,987 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.contexts.FacesLifecycle :106 - After render response, destroying contexts 10:15:53,999 [http-127.0.0.1-8080-2] DEBUG org.jboss.seam.contexts.FacesLifecycle :125 - <<< End JSF request for /kadrovska/place/sifarnici/vrstaObrade/PregledVrstaObrade.orka
just look at the times logged by log4j
this is the jsp page :
<%@ page contentType="text/html; charset=UTF-8"%> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%> <%@ taglib uri="http://jboss.com/products/seam/taglib" prefix="s"%> <%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%> <%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="r"%> <%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a"%> <f:view> <html> <%@ include file="/core/predlozak/Glava.jsp"%> <body onload="setTimeout(postaviFokusNakonZatvaranjaModalnogPanela, 100);"> <h:form id="forma"> <%@ include file="/core/predlozak/Navigator.jsp"%> <!-- glavni panel --> <t:panelGrid id="glavniPanel" columns="2" width="100%" columnClasses="panelAkcijaPoruke,panelPodaci"> <!-- Panel za akciju i poruke --> <t:panelGrid columns="1" styleClass="panelKolona"> <!-- akcija --> <r:panelBar id="panelUvijeti" styleClass="panelAkcija"> <r:panelBarItem id="panelStavkaPretrazivanje" label="#{messages['zajednicke.pretrazivanje']} #{!traziVrstaObrade.trazilica ? messages['zajednicke.unosNovog'] : ''}"> <%@ include file="/core/predlozak/akcija/UnosNovog.jsp"%> <t:panelGrid id="panelUvjetiTrazi" columns="2"> <t:outputText id="outTraziAktivan" value="#{messages['zajednicke.aktivan']}" /> <t:selectOneMenu id="selectAktivan" value="#{traziVrstaObrade.aktivan}" onkeypress="return klikni('forma:trazi','forma:traziAlbum',event)"> <%@ include file="/core/predlozak/AktivanSelect.jsp"%> </t:selectOneMenu> <t:outputText value="#{messages['zajednicke.sifra']}" /> <t:inputText value="#{traziVrstaObrade.sifra}" onkeypress="return klikni('forma:trazi','nista',event)" /> <t:outputText value="#{messages['zajednicke.opis']}" /> <t:inputText maxlength="20" id="inNazivDoprinos" value="#{traziVrstaObrade.opis}" onkeypress="return klikni('forma:trazi','nista',event)" /> <t:commandButton image="/slike/ikone/print.png" title="#{messages['zajednicke.print']}" action="#{printer.print('PregledVrstaObrade', 'pregledVrstaObrade', operKonv, traziVrstaObrade.rezultatiZaPrint,null)}" rendered="#{!traziVrstaObrade.trazilica && !empty traziVrstaObrade.rezultati}" /> <%@ include file="/core/predlozak/akcija/TraziGumb.jsp"%> </t:panelGrid> </r:panelBarItem> </r:panelBar> <!-- poruke panel--> <%@include file="/core/predlozak/Poruke.jsp"%> <!-- zavrsile poruke panel--> </t:panelGrid> <!-- zavrsio Panel za akciju i poruke --> <!-- panel za podatke --> <t:panelGrid columns="1" styleClass="panelKolona"> <r:panel id="podaci" bodyClass="panelTijeloPodaci"> <r:dataTable id="tablica" width="100%" rows="#{operKonv.postavkeOperatera.brojRedova}" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'" cellpadding="0" cellspacing="0" var="v" rowKeyVar="rb" value="#{traziVrstaObrade.rezultati}"> <f:facet name="header"> <r:columnGroup id="grupaKolonaZaglavlje"> <r:column rendered="#{!traziVrstaObrade.traziJedan}"> <t:outputText value="#{messages['zajednicke.oznacen']}" /> </r:column> <%@include file="/core/predlozak/kolone/zaglavlje/RedniBroj.jsp"%> <%@include file="/core/predlozak/kolone/zaglavlje/Sifra.jsp"%> <%@include file="/core/predlozak/kolone/zaglavlje/Opis.jsp"%> <%@include file="/core/predlozak/kolone/zaglavlje/OperaterPromjene.jsp"%> </r:columnGroup> </f:facet> <r:column rendered="#{!traziVrstaObrade.traziJedan}" styleClass="kolonaCentrirano"> <t:selectBooleanCheckbox id="oznacen" value="#{v.oznacen}" /> </r:column> <r:column styleClass="kolonaCentrirano"> <t:outputText value="#{v.rb}." /> </r:column> <r:column rendered="#{traziVrstaObrade.traziJedan}" styleClass="kolonaCentrirano"> <t:commandLink action="#{teleport.inConversation(obradaVrstaObrade.entIzBaze(v.id))}" styleClass="pregledLink" title="#{messages['zajednicke.promjeni']}" value="#{v.sifra}" /> </r:column> <r:column rendered="#{!traziVrstaObrade.traziJedan}" styleClass="kolonaCentrirano"> <t:outputText value="#{v.sifra}" /> </r:column> <r:column styleClass="kolonaLijevo"> <t:outputText value="#{v.opis}" /> </r:column> <%@include file="/core/predlozak/kolone/tijelo/OperaterPromjene.jsp"%> </r:dataTable> <t:panelGrid columns="2"> <t:panelGrid columns="3" rendered="#{!traziVrstaObrade.traziJedan}"> <t:commandButton image="/slike/ikone/oznacen.png" title="#{messages['zajednicke.oznaciSve']}" style="cursor:pointer" onclick="return traziOznaciSve('oznacenKriterij',true);" /> <t:commandButton image="/slike/ikone/odznacen.png" title="#{messages['zajednicke.odznaciSve']}" style="cursor:pointer" onclick="return traziOznaciSve('oznacenKriterij',false);" /> <t:commandButton image="/slike/ikone/zamjeni.png" title="#{messages['zajednicke.zamjeni']}" style="cursor:pointer" onclick="return traziZamjeniOznake('oznacenKriterij');" /> </t:panelGrid> <t:panelGrid columns="5" id="scroll" rendered="#{traziVrstaObrade.pages.size>1}"> <a:commandLink immediate="true" eventsQueue="red" styleClass="unosNovogLink" reRender="tablica,scroll" action="#{traziVrstaObrade.firstPage}" value="#{messages['prvi']}" /> <a:commandLink value="#{messages['prethodni']}" immediate="true" styleClass="unosNovogLink" action="#{traziVrstaObrade.previousPage}" reRender="tablica,scroll" /> <t:outputText value="#{traziVrstaObrade.currentPage}/#{traziVrstaObrade.pages.size}" /> <a:commandLink eventsQueue="red" immediate="true" value="#{messages['sljedeci']}" styleClass="unosNovogLink" action="#{traziVrstaObrade.nextPage}" reRender="tablica,scroll" /> <a:commandLink eventsQueue="red" reRender="tablica,scroll" styleClass="unosNovogLink" immediate="true" action="#{traziVrstaObrade.lastPage}" value="#{messages['zadnji']}" /> </t:panelGrid> </t:panelGrid> </r:panel> </t:panelGrid> <!-- zavrsio panel za podatke --> </t:panelGrid> <!-- zavrsio glavni panel --> </h:form> <%@ include file="/core/predlozak/Podnozje.jsp"%> </body> </html> </f:view>