0

私はこのクラスを持っています:

@Getter
@Setter
public class Notification implements Serializable{
    
    private String color;
    private String message; //contains an error code
    private Boolean active;

}

それから私はそれらの2つのファイルを持っています:

プロパティファイル

によって宣言された:

<?xml version="1.0" encoding="UTF-8"?>
<faces-config
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
    version="2.0">
     <application>
           <locale-config>
                <default-locale>fr</default-locale>
                <supported-locale>fr</supported-locale>
                <supported-locale>en</supported-locale>
           </locale-config>
       <resource-bundle>
        <base-name>com.cogepat.template</base-name>
        <var>msg</var>
       </resource-bundle>
     </application>
</faces-config>

そして、ここに私の問題があります: "red"、"ERRdon"、true を含む通知オブジェクトがあります。JSFコード内で、「ERRdon」に対応する文字列を出力するにはどうすればよいですか?

通常、私はするだろう

<h:outputText value="#{msg.ERRdon}:" />

しかし、ここではそれができません。

編集

<h:outputText class="rt" value="#{msg[BeanName.n.message]}" />

は働いている

4

1 に答える 1

0

バンドルからjsfメッセージを送信するためのこのスニペットがあります。うまくいくことを願っています:

public static void addNewFacesMessageFromBundle(FacesContext facesContext,
            FacesMessage.Severity severity, String clientId, String key, Object[] summaryArgs,
            Object[] detailArgs) {

        String bundleName = facesContext.getApplication().getMessageBundle();
        Locale locale = facesContext.getViewRoot().getLocale();

        if (bundleName == null) {
            bundleName = Constantes.DEFAULT_CUSTOM_FACES_MESSAGE_BUNDLE_NAME;
        }

        ResourceBundle bundle = ResourceBundle.getBundle(bundleName, locale);

        String summary = bundle.getString(key);
        String detail = bundle.getString(key + "_detail");

        summary = MessageFormat.format(summary, summaryArgs);
        detail = MessageFormat.format(detail, detailArgs);

        JsfUtils.addNewFacesMessage(facesContext, clientId, severity, summary, detail);

    }
于 2012-09-13T14:37:44.760 に答える