Bevor ich auf, sehen diese questionWie kann ich einen JSF-Komponentenwert mithilfe von EL abrufen?
Es ist JSF Form wieder wie folgt dargestellt:
Hinweis
<f:view>
<h:form>
<div>
<label>Id</label>
<input type="text" name="accountId"/>
</div>
<div>
<label>Amount</label>
<input type="text" name="amount"/>
</div>
<h:commandButton value="Withdraw" action="#{accountService.withdraw(param.accountId, param.amount)}"/>
</h:form>
</f:view>
, die ich
<input type="text" name="amount">
statt
<h:inputText id="amount">
verwendet haben.
Um den Wert mithilfe von Seam EL Resolver abzurufen, verwende ich
param.amount
.
Es passiert, dass, wenn ich <input type="text"
benutze und etwas auf der Serverseite schief geht, muss ich die Seite erneut anzeigen. Daher wird der übermittelte Wert nicht abgerufen, da es sich um einen einfachen HTML-Code handelt. Aus diesem Grund muss ich stattdessen eine JSF-Komponente <h:inputText
verwenden.
Die Frage ist also: Wie kann ich einen <h:inputText
JSF-Komponente Wert mit Expression Language abrufen?
zu starten, war Ihre Frage ziemlich verwirrend. Es sieht so aus, als wäre die Seam-Geschichte hier völlig irrelevant. Bitte posten Sie in der Zukunft den JSF-Code, den Sie ** tatsächlich ** haben und sagen Sie, was genau Sie mit ** Ihrem ** Code machen wollen. – BalusC
Das macht auch keinen Sinn. Im einfachen JSP/Servlet hätten Sie '' dafür verwenden können. – BalusC
Ich empfehle dringend, sich durch ein anständiges JSF-Buch/Tutorial zu begeben, um zu verstehen, wie JSF "unter der Haube" funktioniert. Auch das Lernen von "Plain Vanilla" JSP/Servlet würde viel dazu beitragen, es zu verstehen. Sie machen Vermutungen und versuchen, JSFs Ideologie zu brechen, indem Sie all ihre Arbeit in Ihren eigenen Händen übernehmen. Tut mir leid, wenn ich hart klingen sollte, aber das ist die Wahrheit. – BalusC