【发布时间】:2014-03-06 12:00:22
【问题描述】:
我在使用 Prime Face 4.0 时遇到问题。我使用spring和hibernate框架实现了一个Java web应用程序,prime faces 4.0,JSF。我有一个包含多个选项卡的表单。我使用 require="true" 来验证文本框。因此,如果必填字段留空,则会触发验证消息。
假设我有一个包含 4 个选项卡的表单,并且我有 6 个必填字段。填写表格时,我忘记填写 6 个必填字段中的 1 个,然后单击保存。将显示验证消息,但它会阻止应用程序。我无法单击选项卡,甚至无法单击菜单栏。它完全阻止了应用程序。
以下是日志中的错误信息:
参考错误:Primefaces 未定义
请在下面找到xhtml页面:
<ui:composition 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"
template="/WEB-INF/jsf/template.xhtml">
<ui:define name="content">
<h:form prependId="false">
<p:panel header="#{toydetailsmsgs['toydetails.title']}" style="margin-top:10px">
<p:messages />
<h:panelGrid id="detail" columns="2" styleClass="grid" columnClasses="label,value">
<p:growl id="growl" showDetail="true" sticky="true" />
<p:tabView id="tabView" dynamic="true">
<p:tab id="tab1" title="Home">
<h:panelGrid id="main" columns="2" styleClass="grid" columnClasses="label,value">
<h:outputText value="#{toydetailsmsgs['toydetails.id.title']}:*" />
<h:selectOneMenu id="toydetails_id" value="#{ToyDetailsComponent.toydetails.id}"style="width:200px;" required="true">
<f:selectItems value="#{ToyDetailsComponent.toyLists}"
var="current" itemValue="#{current.toyCode}"
itemLabel="#{current.toyCode} - #{current.toyDesc}" />
</h:selectOneMenu>
<p:calendar pattern="dd/MM/yyyy" id="toyedetails_dob"
value="#{ToyDetailsComponent.toydetails.Dob}"
required="true" converter="primefacesCalendarConverter"/>
</h:panelGrid>
</p:tab>
<p:tab id="tab2" title="Toy Details">
<h:panelGrid id="main1" columns="2" styleClass="grid" columnClasses="label,value">
<p:calendar pattern="dd/MM/yyyy" id="toydetails_date" value="#{ToyDetailsComponent.toydetails.Date}"
required="false" converter="primefacesCalendarConverter" >
<p:ajax event="dateSelect" process="toydetails_date"
update="toydetails_service" listener="#{ToyDetailsComponent.calculateService()}" />
</p:calendar>
<h:outputText value="#{toydetailsmsgs['toydetails.service.title']}:" />
<h:inputText id="toydetails_service" value="#{ToyDetailsComponent.toydetails.Service}"
required="false" label="toydetails_toyservice" disabled="true" style="width: 197px"/>
</h:panelGrid>
</p:tab>
<p:tab id="tab3" title="Details">
<h:panelGrid id="detail5" columns="2" styleClass="grid" columnClasses="label,value">
<h:outputText value="#{toydetailsmsgs['toydetails.det.title']}:*" />
<h:inputText id="toydetails_det" value="#{ToyDetailsComponent.toydetails.Det}"
required="true" style="width: 197px"/>
</h:panelGrid>
</p:tab>
</p:tabView>
</h:panelGrid>
<h:panelGrid id="button" columns="2" styleClass="grid" columnClasses="label,value">
<h:panelGroup>
<p:commandButton image="save" ajax="false"
style="margin-right:20px;"
value="#{toydetailsmsgs['navigation.save']}"
action="#{ToyDetailsComponent.save|ToyDetails(ToyDetailsComponent.toydetails)}" />
</h:panelGroup>
</h:panelGrid>
</p:panel>
</h:form>
</ui:define>
</ui:composition>
谢谢
【问题讨论】:
-
你的网页在哪里?
-
只需将其添加到帖子中。看看谢谢:)
标签: java spring hibernate jsf primefaces