nur eine Message auf Faceskontext ausgeben

Status
Nicht offen für weitere Antworten.

schlumsch

Aktives Mitglied
Hallo allerseits,

ich habe da mal eine (sicher leicht zu lösende) frage zum Thema JSf Messages.
Ich schieben mehrere Message in meinen facesContext. Diese kann ich ir
auch wunderbar alle in jsf ausgeben lassen. Nun möchte ich aber nur eine
ganz bestimmte Message haben, im Beispiel unten die "myMessage".
Die Frage: wie?

Ich danke schonmal im Voraus und poste ein wenig Code *g*...


im bean
Code:
addMyFacesMessage(FacesMessage.SEVERITY_INFO, "this is my Message");
addNewFacesMessage(FacesMessage.SEVERITY_ERROR, "select Language");


	private void addMyFacesMessage(Severity sev, String msg) {
		FacesMessage myMsg = new FacesMessage();
		myMsg.setDetail(msg);
		myMsg.setSeverity(sev);
		FacesContext.getCurrentInstance().addMessage("myMessage", myMsg);
	}

	private void addNewFacesMessage(Severity sev, String msg) {
		FacesMessage newMsg = new FacesMessage();
		newMsg.setDetail(msg);
		newMsg.setSeverity(sev);
		FacesContext.getCurrentInstance().addMessage(null, newMsg);

...und...

Code:
	public void checkForInfos() {
		FacesContext context = getContext();
		context.getMessages("myMessage");
		if (context.getMessages().hasNext())
			setHasInfos(true);
		else
			setHasInfos(false);		
	}

in jsf:

Code:
	<a4j:outputPanel rendered="#{ctrl.hasInfos}" id="infoMsgs" infoClass="portlet-form-msg-panel">
	        <h:outputText value="Infos:"  infoClass="portlet-form-msg" />

	        <h:messages showDetail="true"></h:messages>
	 </a4j:outputPanel>
:D :D :D :D :D
 

gex

Bekanntes Mitglied
Hallo

Hier siehst du, welche Attribute du dem Messages-Tag setzen kannst:
http://www.jsftoolbox.com/documentation/help/12-TagReference/html/h_messages.html

Interessant ist beispielsweise die Option globalOnly, dann werden dir nur
Messages angezeigt, die nicht an eine Komponente gebunden sind (für diejenigen verwendest du einfach ein h:message Tag mit Angabe des for-Attributes).

Ich schlage dir vor, soweit möglich deine Validierungsmessages an Komponenten zu binden,
ansonsten stell doch innerhalb deiner Business-Logik sicher, dass du nicht mehr als eine globale Message
speicherst.

Vielleicht gibt es noch andere Ansätze, hab da erlich gesagt auch nicht lange gesucht.

Gruss
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Gibt es für das message-bundle eine Standard - Ordnung? Web Tier 2
S Wie eine Chatprotokoll realisieren? Web Tier 13
jann Servlet Bei jedem Request wird eine neue Session erstellt. Web Tier 6
S JSF Eine XHTML-Datei in zwei andere XHTML integrieren Web Tier 0
V Wie baue ich eine Ajax Webanwendung? Suche Beispielanwendung (UML) eines AJAX Service Web Tier 0
X JSF - eine Liste aller Sessions, Instanzen bzwFacesContexte bekommen? Web Tier 4
M JSP Mit JSP eine SQLite Datenbank editieren? Web Tier 1
P JSF Eine JSF-Applikation in Drupal darstellen - Möglich? Web Tier 5
T JSF Primefaces beim öffnen eines p:dialog wird eine neue View ManagedBean erstellt Web Tier 2
J Was ist denn eine index.jsp seite ? Web Tier 5
M rendered ruft eine Methode auf, andere aber nicht Web Tier 15
M JSP Objekt in eine JavaBean übergeben Web Tier 7
N rich:extendedDataTable hat eine Spalte zuviel Web Tier 4
T Richtige Aussgabe in eine HTML mit JSF Web Tier 2
S Auswahl eine Zeile von einer HTML Tabelle im Servlet Web Tier 4
C Aktualisieren eine Tabelle mit OnetoMany-Beziehuung Web Tier 6
Scorpi41 RequestDispatcher eine anderes Projekt zugreifen Web Tier 8
C GWT: Eine Variable in allen Widgets Web Tier 6
M JSF: Bei Seitenaufruf eine Methode starten Web Tier 15
I Eine Bean von einer anderen Bean aufrufen Web Tier 2
L Unter JSP eine XML Datei erstellen Web Tier 3
I Export in eine CSV - Datei und PDF Web Tier 5
2 Pro Action nur eine ActionForm? Web Tier 4
B Bei eine eienen Tag auf einen Parent zugreifen. Web Tier 3
O eine .do-File als welcome-file im web.xml Web Tier 4
T Was nehmen für eine Datenbankapplikation mit Webinterface Web Tier 5
G Eine Instanz pro Managed Bean? Web Tier 2
F Beim Aufruf von einer JSF Seite eine Methode ausführen Web Tier 9
M JSF Internationalisierung - jenseits von "Message Bundles" Web Tier 2
A Validator Message in JSF Web Tier 5
R Message Bundles werden nicht geladen Web Tier 2
L Aktualisieren von <h:message> erzwingen? Web Tier 7

Ähnliche Java Themen

Neue Themen


Oben