我有一个JPA实体,在这个实体中我有一个注释的字段:
import javax.persistence.*;
....
@Column(nullable=false, unique=true)
private String name;
然后我在XHTML页面上有一个表单,其格式如下:
<h:form>
<p:panel header="Party Creation">
<h:panelGrid columns="3" id="regGrid">
<h:outputLabel for="name">Name: </h:outputLabel>
<p:inputText id="name" value="#{partyCreationBean.party.name}" />
<h:message for="name" />
提交表单后,系统将调用以下方法
private Party createNewParty(PartyDTO party_dto) {
Party p = new Party(party_dto);
em.persist(p);
....
一切都很好。如果我尝试插入一个已存在于数据库中的名称,那么我将在控制台上有一个例外(但我不会在页面上看到任何内容)。
我的问题是我想在
上显示一条消息 <h:message for="name" />
但我不知道该怎么做。也许我可以捕获异常,但后来我不知道如何使消息出现,但我认为应该是一个比捕获异常更优雅的方式... 无论如何,我该怎么办?!
提前谢天谢地, Samuele。