eclipse 元素“p”的类型:dataTable“”后面必须跟有以下属性规范之一“>”或“/>”,

ovfsdjhp  于 2023-03-22  发布在  Eclipse
关注(0)|答案(1)|浏览(95)

好吧,简单地说...麻烦的是,当我试图运行我的jsf项目使用primefaces,它不..和飞溅在浏览器上的错误屏幕上说什么
“Estado HTTP 500 - Error Parsing /Lista.xhtml:错误跟踪[行:37]元素“p:dataTable”的德贝应根据属性的状态规格:“〉”o“/〉"。”
“HTTP Status 500 - /Lista.xhtml Parsing Error:Error Traced [line 37]元素“p:dataTable“”后面必须跟有以下属性规范之一“〉”或“/〉”。
好吧,我尝试了任何东西,甚至干净和验证,并仔细寻找每个代码行,所以。。请帮助我很高兴你的帮助。。
这是我代码

<!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:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">

<ui:composition template="Template.xhtml">
<ui:define name="content">
<h:head>
<title>Welcome</title>
</h:head>
<h:body>
<h:form>

<p:panelGrid style="margin: 0 auto" columns="2">
<p:outputLabel value="Nombres" />
<p:inputText p:placeholder="Ej; Edward" value="#{personaBean.persona.nombre}"></p:inputText>
<p:outputLabel value="Apellidos" />
<p:inputText p:placeholder="Ej; Snowden"
value="#{personaBean.persona.apellido}" />

<p:outputLabel value="Sexo" style="center" />
<p:selectOneMenu value="#{personaBean.persona.sexo}">
<f:selectItem itemValue="Masculino." itemLabel="Masculino." />
<f:selectItem itemValue="Femenino." itemLabel="Femenino." />
</p:selectOneMenu>

<p:commandButton value="Enviar" actionListener="#{personaBean.agregamePersona}" update="dt" ></p:commandButton>
</p:panelGrid>
<!-- <p:growl id="msj" showDetail="true"/> -->

<p:dataTable id="dt" 
value="#{personaBean.lstPersonas}" 
border="1"var="p" rows="4" 
paginator="true"
paginatorTemplate="{CurrentPageReport}
       {FirstPageLink}
       {PreviousPageLink}
       {PageLinks}
       {NextPageLink}
       {LastPageLink}
       {Exporters}" 
tableStyle="widh:auto" 
rowsPerPageTemplate="1,2,3,5" >

<p:column filterBy="#{p.nombre}" filterMatchMode="contains"headerText="Nombre" style="width:100px" >
<h:outputText value="#{p.nombre}" />
</p:column>
<p:column headerText="Apellido" filterBy="#{p.apellido}" filterMatchMode="contains"style="width:100px">
<h:outputText value="#{p.apellido}" />
</p:column>
<p:column headerText="Sexo" filterBy="#{p.sexo}" filterMatchMode="contains"style="width:100px" sortBy="#{p.sexo}">
<h:outputText value="#{p.sexo}" />
</p:column>

<p:column style="width:40px">
<h:panelGrid columns="3" styleClass="Actions" cellpadding="2">
<p:commandButton id="eraseButton" value="Eliminar"actionListener="#{personaBean.eliminamePersona(p)}" update="dt"  />

<p:commandButton id="selectButton" update=":form:display" oncomplete="interactiveDialog.show()" icon="ui-icon-search" title="View">
<f:setPropertyActionListener value="#{p}" target="#{personaBean.persona}" />
</p:commandButton>

</h:panelGrid>
</p:column>

</p:dataTable>

<p:dialog header="Detalle del cliente" widgetVar="interactiveDialog" resizable="false" id="dialogointeractivo"
          showEffect="fade" hideEffect="explode" modal="true">

<h:panelGrid id="display" columns="2" cellpadding="4" style="margin:0 auto;">

<f:facet name="header">
<h:outputText value="Datos de la fila seleccionada"/>
</f:facet>
<h:outputText value="Nombre"/>
<h:outputText value="#{personaBean.persona.nombre}" style="font-weight:bold"/>

<h:outputText value="Apellido"/>
<h:outputText value="#{personaBean.persona.apellido}" style="font-weight:bold"/>

<h:outputText value="Sexo"/>
<h:outputText value="#{personaBean.persona.sexo}" style="font-weight:bold"/>

</h:panelGrid>

</p:dialog> 

</h:form>
</h:body>
</ui:define>
</ui:composition>
</html>
c90pui9n

c90pui9n1#

我知道现在回答这个问题有点晚,但是我也遇到了同样的问题,结果发现问题是commandButton标记的属性之间的空格,正如@Omar指出的那样。
下面给了我一个错误,因为valueactionListener属性之间不存在空格。

<p:commandButton id="eraseButton" value="Eliminar"actionListener="#{personaBean.updateVal(p)}" />

然而,在属性之间留出空间后,我再也没有得到错误。

<p:commandButton id="eraseButton" value="Eliminar" actionListener="#{personaBean.updateVal(p)}" />

相关问题