Cześć.
Załączam mały JSFowy projekt w zipie.
mam taki problem, że za pierwszym razem kiedy wejdę na stronę.
akcja na przycisku przeładowuje mi stronę zamiast użyć ajaxa.
po tym już wszystko działa dobrze.
aplikację można łatwo zdeployować na tomcat'cie.
załączam xhtml'ki może ktoś od razu zauważy błąd:
index.xhtml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
<h:outputScript library="primefaces" name="jquery/jquery.js"/>
</h:head>
<h:body>
<h:outputStylesheet name="css/style.css"/>
<h:form id="glownaForma">
<ui:fragment rendered="#{true}">
<ui:include src="tabelkaZButtonem.xhtml">
<ui:param name="formName" value="glownaForma"/>
</ui:include>
</ui:fragment>
</h:form>
</h:body>
</html>
tabelkaZButtonem.xhtml
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<p:panel header="Dane w tabelce">
<ui:include src="tabelka.xhtml"/>
<p:commandButton value="Pokaż wiadomość"
onclick="PF('dialogWiadomosci').show()"
rendered="true"
update="dialogWiadomosciForm"
process="@this"/>
</p:panel>
</ui:composition>
tabelka.xhtml
<ui:composition id="uc1864" xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<p:dataTable id="tabelka"
value="#{controller.records}"
var="rekordy"
selectionMode="single"
selection="#{controller.record}"
rowKey="#{rekordy.id}"
paginatorTemplate="{PreviousPageLink} {PageLinks} {NextPageLink}"
rows="5"
paginator="true"
paginatorPosition="bottom">
<p:ajax event="rowSelect" process="@this" update=":#{formName}:dialogWiadomosciForm:wiadomosc"/>
<p:column headerText="ID Rekordu">
<h:outputText value="#{rekordy.id}">
</h:outputText>
</p:column>
<p:column headerText="Opis">
<p:outputLabel value="#{rekordy.description}"/>
</p:column>
</p:dataTable>
<h:form id="dialogWiadomosciForm">
<p:dialog header="Wiadomość z rekordu" widgetVar="dialogWiadomosci"
modal="true" width="80%" appendTo="@(body)"
resizable="false"
dynamic="true"
rendered="#{controller.record != null}">
<p:panel id="wiadomosc">
<h:outputText value="#{controller.record.message}"/>
</p:panel>
</p:dialog>
</h:form>
</ui:composition>
czytam o ajaxie, process i update i nie rozumiem templatek dlaczego tak się dzieje :| . ktoś coś?