0

PrimeFaces / JSF 2.0

p:message ....を使用し、outputTextにrequired = "true"と言うと、ユーザーがフィールドを空白のままにすると、フィールドの右側に表示されるメッセージにエラーアイコンが表示されます。

<!--  NAME -->
  <p:panelGrid styleClass="noBorders" columns="2" columnClasses="inputText" style="width:600px">
   <h:inputText id="Name" size="60" maxlength="70" required="true" styleClass="#{not     component.valid ? 'ui-input-invalid' : ''}" style="width: 300px" value="#{tinRequestBean.name}" >
    <f:validator validatorId="gov.irs.eservices.tm.validations.NameValidator" />
   </h:inputText> 
   <p:message for="Name" display="default" style="color: red" />
  </p:panelGrid>

ただし、バリデーターを使用してフィールドの内容を何らかの方法でチェックすると、標準のFacesMessageは、FacesMessage.SEVERITY_ERRORを使用しても、エラーアイコンは表示されません。

  if (msgStr.length() > 0) {
   FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_ERROR, "TIN: Validation error: "   msgStr, null);
   throw new ValidatorException(msg);
  }

アイコンを付けてFacesMessageを作成する方法を知っている人はいますか?確かにコンストラクターにはありません。

4

1 に答える 1

0

display="both"をオンに設定し<p:message/>ます (または、その属性を完全に除外するbothのがデフォルトです)。これにより、テキストとアイコンの両方が表示されます。私が知る限りdefault、有効なオプションではありません

于 2013-03-14T22:05:05.437 に答える