Class FacesMessage

java.lang.Object
jakarta.faces.application.FacesMessage
All Implemented Interfaces:
Serializable

public class FacesMessage
extends Object
implements Serializable

FacesMessage represents a single validation (or other) message, which is typically associated with a particular component in the view. A FacesMessage instance may be created based on a specific messageId. The specification defines the set of messageIds for which there must be FacesMessage instances.

The implementation must take the following steps when creating FacesMessage instances given a messageId:

Call Application.getMessageBundle(). If non-null, locate the named ResourceBundle, using the Locale from the current UIViewRoot and see if it has a value for the argument messageId. If it does, treat the value as the summary of the FacesMessage. If it does not, or if Application.getMessageBundle() returned null, look in the ResourceBundle named by the value of the constant FACES_MESSAGES and see if it has a value for the argument messageId. If it does, treat the value as the summary of the FacesMessage. If it does not, there is no initialization information for the FacesMessage instance.

In all cases, if a ResourceBundle hit is found for the {messageId}, look for further hits under the key {messageId}_detail. Use this value, if present, as the detail for the returned FacesMessage.

Make sure to perform any parameter substitution required for the summary and detail of the FacesMessage.

See Also:
Serialized Form
  • Field Details

  • Constructor Details

    • FacesMessage

      public FacesMessage()

      Construct a new FacesMessage with no initial values. The severity is set to Severity.INFO.

    • FacesMessage

      public FacesMessage​(String summary)

      Construct a new FacesMessage with just a summary. The detail is null, the severity is set to Severity.INFO.

      Parameters:
      summary - the summary.
    • FacesMessage

      public FacesMessage​(String summary, String detail)

      Construct a new FacesMessage with the specified initial values. The severity is set to Severity.INFO.

      Parameters:
      summary - Localized summary message text
      detail - Localized detail message text
      Throws:
      IllegalArgumentException - if the specified severity level is not one of the supported values
    • FacesMessage

      public FacesMessage​(FacesMessage.Severity severity, String summary, String detail)

      Construct a new FacesMessage with the specified initial values.

      Parameters:
      severity - the severity
      summary - Localized summary message text
      detail - Localized detail message text
      Throws:
      IllegalArgumentException - if the specified severity level is not one of the supported values
  • Method Details

    • getDetail

      public String getDetail()

      Return the localized detail text. If no localized detail text has been defined for this message, return the localized summary text instead.

      Returns:
      the localized detail text.
    • setDetail

      public void setDetail​(String detail)

      Set the localized detail text.

      Parameters:
      detail - The new localized detail text
    • getSeverity

      public FacesMessage.Severity getSeverity()

      Return the severity level.

      Returns:
      the severity level.
    • setSeverity

      public void setSeverity​(FacesMessage.Severity severity)

      Set the severity level.

      Parameters:
      severity - The new severity level
      Throws:
      IllegalArgumentException - if the specified severity level is not one of the supported values
    • getSummary

      public String getSummary()

      Return the localized summary text.

      Returns:
      the localized summary text.
    • setSummary

      public void setSummary​(String summary)

      Set the localized summary text.

      Parameters:
      summary - The new localized summary text
    • isRendered

      public boolean isRendered()
      Returns:
      true if rendered() has been called, otherwise false
      Since:
      2.0
    • rendered

      public void rendered()

      Marks this message as having been rendered to the client.

      Since:
      2.0