Parameter übergeben um Meldungen aus dem Ressource-bundle, um anderen Komponenten als **h:outputFormat**
Gibt es eine komfortable Möglichkeit zur übergabe von Parametern an Nachrichten aus dem Ressource-bundle, um anderen Komponenten als h:outputFormat?
Zum Beispiel, das ist legal:
<h:outputFormat value="#{myBundle['parametricMessage']}">
<f:param value="#{myBundle['someParameterValue']}"/>
</h:outputFormat>
Aber ich brauche es für eine Schaltfläche, wie diese (was nicht funktioniert):
<h:commandButton value="#{myBundle['parametricMessage']}">
<f:param value="#{myBundle['someParameterValue']}"/>
</h:commandButton>
Natürlich kann ich verwenden, link statt button, und ich kann machen Sie es durch eine Eigenschaft, die in einer managed bean, aber in dieser Frage bin ich auf der Suche nach einem bequem Weg, um die Taste zu verwenden...
Ich bin mit RichFaces 3.3.3, JSF2, facelets.
InformationsquelleAutor Andrey | 2011-04-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie etwa dieser Ansatz ?
EL-Ausdruck erlauben Sie eine Funktion definieren .Definieren Sie zunächst einen EL-Ausdruck " s-Funktion , die akzeptiert, dass eine Ressource-bundle , Ihre Nachricht Schlüssel und Platzhalter 's parameter und Ausgabe der aufgelösten Nachricht .
Rufen Sie dann diese Funktion, um die gelöst-Nachricht in der
<h:commandButton>
:InformationsquelleAutor Ken Chan
Versuchen Sie dies:
Btw, das tut, was Sie wollen und auch nicht schreiben backing-bean-code.
InformationsquelleAutor Zak
Gut finde ich nicht gut beantworten, so dass die Frage offen bleiben.
Eine gute Praxis, die ich entdeckt habe, ist eine spezielle Klasse, die das repräsentiert, jede Ressource-bundle (parametric Zeug), und übertragen der Nachricht, die Bildung und die Arbeit mit Kontext gibt (wie, erwerben Gebietsschema von FacesContext, bekommen ein ResourceBundle, anwenden, Parameter, usw). Und schließlich, um Zugriff auf ein singleton-Instanz ein solcher service-Klasse, von deiner ManagedBean.
Dies erfordert einige zusätzliche Arbeit zu tun, sondern löst das problem und ist es Wert zu der Zeit.
InformationsquelleAutor Andrey