This content has been marked as final.
Show 3 replies
-
1. Re: Problem: Page incompletely rendered
ilya_shaikovsky Jan 20, 2010 5:27 AM (in response to tnaran)page sources would be helpfull for investigation. -
2. Re: Problem: Page incompletely rendered
tnaran Jan 20, 2010 1:56 PM (in response to ilya_shaikovsky)The pages in question run almost a 100k. I can't seem to re-create this with smaller pages, but I can show you the high-level page markup.
First off, I'm using Facelets and ui:composition for templating. The top template is:
layout.xhtml:
{code:xml}
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich"
xmlns:p="http://primefaces.prime.com.tr/ui">
<f:loadBundle basename="ca.absu.patr.pact.version" var="version" />
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<ui:insert name="includes" />
<style type="text/css">
.leftAlign {
text-align: left;
}
.rightAlign {
text-align: right;
}
</style>
<script type="text/javascript">
var infoWindowAMShown = false;
var infoWindowAMTimer;
function showModalInfoWindow()
{
infoWindowAMTimer = setTimeout("if(!infoWindowAMShown){Richfaces.showModalPanel('ajaxLoadingModalBox');infoWindowAMShown=true;}", 1000);
}
function hideModalInfoWindow()
{
if (infoWindowAMShown){Richfaces.hideModalPanel('ajaxLoadingModalBox');infoWindowAMShown=false;}else{if(infoWindowAMTimer)clearTimeout(infoWindowAMTimer);}
}
</script>
<title><ui:insert name="title">PA Tracking</ui:insert></title>
</head>
<body>
<f:view>
<a4j:status onstart="showModalInfoWindow();"
onstop="hideModalInfoWindow()"></a4j:status>
<div id="wrapper">
<div id="header"><h:form>
<table border="0" width="1181px" cellspacing="0" cellpadding="0">
<tr>
<td style="vertical-align: bottom"><img
src="#{facesContext.externalContext.requestContextPath}/images/logo_1.gif"
alt="PA Tracking" vspace="5" /></td>
<td style="vertical-align: bottom"><img
src="#{facesContext.externalContext.requestContextPath}/images/logo_2.gif"
alt="BC Hydro" style="float: right; margin-right: 10px" />
<div style="clear: both; margin: 0 1em 0 0" class="header-controls">
<ui:insert name="header-controls" />
</div>
</td>
</tr>
</table>
</h:form></div>
<ui:insert name="content">Insert Your Content Here</ui:insert></div>
<div style="font-size: x-small; text-align: right"><h:outputText
value="Built on #{version.build_date}" /></div>
<rich:modalPanel id="ajaxLoadingModalBox" minHeight="100"
minWidth="250" height="100" width="250" zindex="2000">
<p style="text-align: center">Your request is being processed,
please wait.</p>
<div style="text-align: center"><h:graphicImage
value="/images/loading.gif" style="border: none" /></div>
</rich:modalPanel>
<rich:modalPanel id="errorMessages" minHeight="100" minWidth="250"
zindex="2000">
<f:facet name="header">
<h:panelGroup>
<h:outputText value="Errors"></h:outputText>
</h:panelGroup>
</f:facet>
<f:facet name="controls">
<h:panelGroup>
<h:graphicImage value="/images/close.png" styleClass="hidelink"
id="hide_errors" />
<rich:componentControl for="errorMessages" attachTo="hide_errors"
operation="hide" event="onclick" />
</h:panelGroup>
</f:facet>
<rich:messages />
<input type="button" name="close_errs" value="Close"
onclick="hideModal(#{rich:component('errorMessages')})" />
</rich:modalPanel>
</f:view>
</body>
</html>
{code} -
3. Re: Problem: Page incompletely rendered
tnaran Jan 20, 2010 1:58 PM (in response to tnaran)Couldn't seem to edit that post properly.
This is the actual client of that template
{code:xml}
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich">
<head>
</head>
<body>
<ui:composition template="layout.xhtml">
<ui:define name="title">PA/CT</ui:define>
<ui:define name="content">
<h:form id="mainForm">
<div
style="background-image: url(#{facesContext.externalContext.requestContextPath}/images/headnav_s2.gif); background-repeat: repeat-x; background-position: top; padding-top: 3px;">
<rich:tabPanel id="queryTabs" selectedTab="#{tabBean.activeTab}" switchType="server">
<rich:tab id="db" label="Dashboards" reRender="results" ontabenter="javascript:highlightGraphBar(#{dashboardBean.previousSelectionId})">
<ui:include src="includes/tab1.xhtml" >
<ui:param name="panel" value="db" />
</ui:include>
</rich:tab>
<rich:tab id="progress" label="Details" reRender="results">
<ui:include src="includes/tab2.xhtml" >
<ui:param name="panel" value="progress" />
</ui:include>
</rich:tab>
<rich:tab id="circuit" label="Circuits" reRender="results">
<ui:include src="includes/tab3.xhtml"/>
</rich:tab>
<rich:tab id="pa" label="Plant Alteration" reRender="results">
<ui:include src="includes/tab4.xhtml"/>
</rich:tab>
<rich:tab id="quick" label="Quick Searches" reRender="results">
<ui:include src="includes/tab5.xhtml"/>
</rich:tab>
<rich:tab id="reports" label="Reports" reRender="results">
<ui:include src="includes/tab6.xhtml"/>
</rich:tab>
</rich:tabPanel>
</div>
<rich:panel id="results" styleClass="results">
<a4j:include viewId="includes/table_a.xhtml"
rendered="#{queryBean.resultView=='a'}" />
<a4j:include viewId="includes/table_b.xhtml"
rendered="#{queryBean.resultView=='b'}" />
</rich:panel>
</h:form>
<ui:include src="includes/notes.xhtml" />
</ui:define>
</ui:composition>
</body>
</html>
{code}