Vistas info
Por último vamos con las vistas creamos en src/main/webapp el archivo plantilla.xhtml
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>
<ui:insert name="header">
<ui:include src="encabezado.xhtml"></ui:include>
</ui:insert>
<ui:insert name="content">
<ui:include src="contenido.xhtml"></ui:include>
</ui:insert>
</h:body>
</html>
En el mismo directorio creamos la clase encabezado.xhtml
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>
<ui:composition>
<div class="card">
<h:form>
<p:menubar>
<p:submenu label="Información" icon="ui-icon-document">
<p:menuitem value="Administración Equipos" />
<p:separator />
</p:submenu>
</p:menubar>
</h:form>
</div>
</ui:composition>
</h:body>
</html>
Creamos el archivo contenido.xhtml
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>
<ui:composition>
<h1>Bienvenido a la Liga Azteca</h1>
</ui:composition>
</h:body>
</html>
Realizamos la vista index.xhtml
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:c="http://java.sun.com/jsp/jstl/core"
>
<h:head>
</h:head>
<h:body>
<div style="margin:0 auto;width:70%">
<ui:composition template="plantilla.xhtml" >
<ui:define name="content" >
<h:form>
<p:panel header="Inscripciones Liga Azteca Atizapan" footer="Tutosoftware">
<h1>Bienvenido inscribete alguno de los torneos que tenemos abiertos para participar</h1>
<c:forEach var="torneo"
items="${torneoView.torneosIncripcion}">
<p:link value="#{torneo.nombreTorneo}" outcome="equipo" includeViewParams="true">
<f:param name="torneo" value="#{torneo.nombreTorneo}"></f:param>
<f:param name="idtorneo" value="#{torneo.idTorneo}"></f:param>
<f:param name="cantidadequipo" value="#{torneo.cantidadEquipos}"></f:param>
<f:param name="costo" value="#{torneo.costoInscripcion}"></f:param>
</p:link><br />
</c:forEach>
</p:panel>
</h:form>
</ui:define>
</ui:composition>
</div>
</h:body>
</html>
Creamos la vista equipo.xhtml
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:c="http://java.sun.com/jsp/jstl/core"
>
<h:head>
<f:metadata>
<f:viewParam name="torneo" value="#{torneoView.nombreTorneo}" ></f:viewParam>
<f:viewParam name="cantidadequipo" value="#{torneoView.cantidadEquipos}" ></f:viewParam>
<f:viewParam name="costo" value="#{torneoView.costoInscripcion}" ></f:viewParam>
<f:viewParam name="idtorneo" value="#{equipoView.idTorneo}" ></f:viewParam>
</f:metadata>
</h:head>
<h:body>
<div style="margin:0 auto;width:70%">
<ui:composition template="plantilla.xhtml" >
<ui:define name="content" >
<h:form id="form">
<p:growl id="messages"/>
<p:panel header="Inscribe tu equipo al torneo #{torneoView.nombreTorneo} " footer="Tutosoftware">
<h1> </h1>
<p:card style="width: 50rem; margin-bottom: 2em">
<f:facet name="title">
Pagar en la liga el costo de la inscripción al torneo es de $#{torneoView.costoInscripcion}<br/>
lugares disponibles: #{torneoView.cantidadEquipos}
</f:facet>
<p>Ubicación:Teatro Zaragoza<br/>
Teléfono: 5540583258</p>
</p:card>
<p:inputText id="idTorneo" value="#{equipoView.idTorneo}" type="hidden" ></p:inputText>
<h:panelGrid columns="3" cellpadding="5">
<h:outputLabel value="Nombre del Equipo:" for="nombreEquipo" style="color:white" />
<p:inputText id="nombreEquipo" value="#{equipoView.nombreEquipo}"
size="100" required="true" requiredMessage="Nombre del equipo requerido" >
</p:inputText>
<p:message for="nombreEquipo" ></p:message>
<h:outputLabel value="Nombre del Delegado:" for="delegado" style="color:white" />
<p:inputText id="delegado" value="#{equipoView.delegado}"
size="100" required="true" requiredMessage="Nombre del delegado requerido" >
</p:inputText>
<p:message for="delegado" ></p:message>
<h:outputLabel value="Nombre del campo:" for="campo" style="color:white" />
<p:inputText id="campo" value="#{equipoView.campo}"
size="100" required="true" requiredMessage="Nombre del campo requerido" >
</p:inputText>
<p:message for="campo" ></p:message>
<h:outputLabel value="Correo electrónico:" for="email" style="color:white" />
<p:inputText id="email" value="#{equipoView.email}"
size="100" required="true" requiredMessage="Email requerido" >
</p:inputText>
<p:message for="email" ></p:message>
<h:outputLabel value="Password:" for="password" style="color:white" />
<p:password id="password" value="#{equipoView.password}"
size="20" required="true" requiredMessage="Password requerido" >
</p:password>
<p:message for="password" ></p:message>
<h:outputLabel value="Teléfono:" for="telefono" style="color:white" />
<p:inputText id="telefono" value="#{equipoView.telefono}"
size="20" required="true" requiredMessage="Teléfono requerido" >
</p:inputText>
<p:message for="telefono" ></p:message>
<f:facet name="footer">
<p:commandButton value="Inscribir Equipo" action="#{equipoView.insertarEquipo}" update="form,messages" ></p:commandButton>
</f:facet>
</h:panelGrid>
</p:panel>
</h:form>
</ui:define>
</ui:composition>
</div>
</h:body>
</html>