2010-12-06 9 views
4

私は、彼はそれが警告であることを知っている、か何かだろうという方法で、顧客への警告メッセージを表示しようとしてきました彼は間違っていた。 しかし、私が行う方法は情報メッセージです。どのように私はそれをより厳しく見せることができますか?ユーザーに警告メッセージを表示(および状況の深刻さを強調)する方法

if (this.instance.getName().trim().equals("")){ 
    addFacesMessage("You must type a name!"); 
    return null; 
} 

これはあまりにもやさしいです。

+1

あなたの質問をさらに詳細に編集したい場合があります。あなたはあなたが「」 '.equals書くべき –

+1

x.xなどシームバージョンを使用していること(this.instance.getNameを()。トリム())'代わりにNullPointerExceptionsが –

+0

が行わ避けるために、あなたに感謝。 – pringlesinn

答えて

0

を注入:

@In 
FacesMessages facesMessages; 
facesMessages.add(Severity.WARN, "Your message"); 

重大度は、いくつかの警告レベルを含む列挙型です。

+3

代わりに 'StatusMessages'を使用してください。 'FacesMessages'は非推奨です –

+0

Eclipseは私にそれをさせません。 「FacesMessage型のadd(StatusMessage.Severity、String)メソッドは未定義です」というメッセージが表示され、その提案は受け入れられません。 – pringlesinn

2

のShervinあなたはStatusMessagesの代わりfacesMessagesのを使用する必要があり語ったよう。 StatusMessagesには素晴らしいメソッドがたくさんあります。また、それらを見ることもできます。

import org.jboss.seam.international.StatusMessages; 
import org.jboss.seam.international.StatusMessage.Severity; 
.... 
StatusMessages.instance().add(Severity.ERROR, "Message"); 

その後、errorStyle、fatalStyle、warnStyleを使用してメッセージのルック・アンド・フィールをカスタマイズできます。

<h:messages errorStyle="yourStyle" /> 
+0

FacesMessagesと同じことが起こります。 Eclipseは私にそれをさせません。 「FacesMessage型のadd(StatusMessage.Severity、String)メソッドは未定義です」というメッセージが表示され、その提案は受け入れられません。どのようにそれを修正するための任意のアイデア? – pringlesinn

+0

StatusMessage.Severityの代わりにorg.jboss.seam.international.StatusMessage.Severityを使用する必要があります。上記のインポート文を使用することができます。 –

+0

私はそれを試してみるよ、私はあなたに知らせるでしょう! – pringlesinn

0

ロガーを使用できますか?

logger = Logger.getLogger(getClass().getName()); 
logger.severe(message); 
+0

ロガーは実際にはイベントの内部レコード用です。この場合のメッセージは、Webアプリケーションのエンドユーザーに出力するためのものです。アカウントを作成した後、またはリストからムービーを削除した後で、次のページに表示されるメッセージで、そのページまたは移行先のページのユーザーに何らかのフィードバックを提供したい場合です。 –

0

その後facesMessagesコンポーネントを挿入、あなたの輸入は

import org.jboss.seam.faces.FacesMessages; 
import org.jboss.seam.international.StatusMessage.Severity; 

正しいことを確認します。

@In(create = true) 
FacesMessages facesMessages; 

その後、Ajaxリクエストのために

<h:messages errorStyle="color:red"/> 

の下には rich:messagesコンポーネントを使用して今すぐメッセージを表示

facesMessages.add(Severity.ERROR, "You must type a name!"); 

以下のようなエラーメッセージと重要度を設定することができます。この

StatusMessages.instance().add(Severity.ERROR, "Incorrect answers below."); 

よう

<rich:messages errorClass="yourErrClass"/> 
1

使用ステータスメッセージは、facesMessagesのを使用しないでください。

ありがとうございました

関連する問題