[JAVA] <f: ajax> <f: ajax> kann nicht an Nicht-ClientBehaviorHolder angehängt werden. Was tun, wenn Sie Eltern werden?

--Umgebung - CentOS Linux release 7.8.2003 (Core) - Eclipse IDE for Enterprise Java Developers.Version: 2020-03 (4.15.0) - openjdk version "11.0.7" 2020-04-14 LTS - JSF 2.3.9

Ereignis: HTTPS-Status 500 beim Versuch, die Seite nach dem Hinzufügen der Ajax-Verarbeitung anzuzeigen

Eclipse Console-Fehler


javax.faces.view.facelets.TagException: /base.xhtml @18,103 <f:ajax> Unable to attach <f:ajax> to non-ClientBehaviorHolder parent
    at com.sun.faces.facelets.tag.jsf.core.AjaxHandler.applyNested(AjaxHandler.java:276)
    at com.sun.faces.facelets.tag.jsf.core.AjaxHandler.apply(AjaxHandler.java:148)
    at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
    at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:179)
...Kürzung...

base.xhtml


...Kürzung...
<h:inputHidden id="file">
  <f:ajax event="change" execute="@form" render="@form" listener="#{uploadBean.uploadFile}" />
</h:inputHidden>
...Kürzung...

Ursache: f: ajax kann nur in einem Tag verwendet werden, das die ClientBehaviorHolder-Schnittstelle implementiert.

Register an AjaxBehavior instance on one or more UIComponents implementing the ClientBehaviorHolder interface. ajax(JSF 2.2 View Declaration Language: Facelets Variant)

Registrieren Sie eine AjaxBehavior-Instanz bei einer oder mehreren UIComponents, die die ClientBehaviorHolder-Schnittstelle implementieren. In diesem Fall ist die Frage, ob h: inputHidden die ClientBehaviorHolder-Schnittstelle implementiert, aber als ich mir das JavaDoc für ClientBehaviorHolder ansah, war es außerhalb des Geltungsbereichs ...

All Known Implementing Classes: HtmlBody, HtmlCommandButton, HtmlCommandLink, HtmlDataTable, HtmlForm, HtmlGraphicImage, HtmlInputFile, HtmlInputSecret, HtmlInputText, HtmlInputTextarea, HtmlOutcomeTargetButton, HtmlOutcomeTargetLink, HtmlOutputLabel, HtmlOutputLink, HtmlPanelGrid, HtmlPanelGroup, HtmlSelectBooleanCheckbox, HtmlSelectManyCheckbox, HtmlSelectManyListbox, HtmlSelectManyMenu, HtmlSelectOneListbox, HtmlSelectOneMenu, HtmlSelectOneRadio ClientBehaviorHolder (JavaServer Faces API (2.2))

Aktion: Ändern Sie das Tag in h: inputText

...Kürzung...
<h:inputText id="file" style="display:none;">
  <f:ajax event="change" execute="@form" render="@form" listener="#{uploadBean.uploadFile}" />
</h:inputText>
...Kürzung...

Recommended Posts

<f: ajax> <f: ajax> kann nicht an Nicht-ClientBehaviorHolder angehängt werden. Was tun, wenn Sie Eltern werden?
Was tun bei Problem während der Inhaltsunterstützung?
Was tun, wenn die Methode in f: ajax nicht gefunden wurde?
Was tun, wenn eine javax.el.PropertyNotWritableException auftritt?
Was tun, wenn Sie mit Docker-Compose auf das Problem node_modules stoßen?
Was verwenden Sie beim Konvertieren in String?
Was tun, wenn JSF-Tags nicht zu HTML werden?
Was tun, wenn Sie versehentlich ein Modell erstellen?
Was tun, wenn beim Versuch, Eclipse unter Java 9 auszuführen, ein NoClassDefFoundError angezeigt wird?
Was tun, wenn CDI BeanManager nicht mehr gefunden werden kann?
Was tun, wenn in GlassFish eine java.io.IOException auftritt?
[Rails Tutorial Kapitel 2] Was tun, wenn Sie einen Fehlern im Spaltennamen machen?
Was tun, wenn eine javax.batch.operations.JobStartException auftritt?
Was tun, wenn in einer Lightweight-JRE eine UnsupportedCharsetException auftritt?
Was tun, wenn in Docker ein gcc-Fehler auftritt?
Was tun, wenn beim Versuch, mit Eclipse zu erstellen, ein Fehler in der gemeinsam genutzten JNI-Bibliothek auftritt?
Was tun, wenn Sie in Thymeleaf Layout eine groovige Warnung erhalten?
Was tun, wenn der Vorgang nicht zulässig ist, wenn ein Befehl im Terminal ausgeführt wird?
undefinierte Methode Was tun, wenn Sie "user_signed_in" erhalten?
Was ist zu tun, wenn auf den Schienen cHoge.connection aufruft, um eine Verbindung herzustellen? C.
Was tun, wenn auf GitHub eine MiniMagick-Sicherheitsanfälligkeitswarnung angezeigt wird?
Hinweise zur Vorgehensweise beim Auftreten einer WebView ClassNotFoundException in JavaFX 12
Was tun, wenn die Meldung "Ein Server läuft bereits" angezeigt wird. Fehler beim Versuch, den Rails-Server zu starten
Was tun, wenn Sie glauben, dass Sie mit IntelliJ IDEA CE nicht Groovy-> Java können?
Was zu tun ist, wenn es ungültig ist, weil es nicht mit einem '-' beginnt
[Ubuntu] Was tun, wenn MongoDB aufgrund eines SocketException-Fehlers nicht gestartet werden kann?
Was tun, wenn Sie falsche Informationen eingeben?
Was tun beim Debuggen von "Quelle nicht gefunden"?
Was tun, wenn in PlayFramework eine IllegalStateException auftritt?
Was tun, wenn beim Abrufen von Rails datetime_field die Fehlermeldung "Bitte geben Sie einen gültigen Wert ein" angezeigt wird?
Was tun, wenn die Fehlermeldung "JavaScript-Laufzeit konnte nicht gefunden werden" angezeigt wird? Beim Starten des Rails-Servers
Was tun, wenn in bind.pry eine falsche Anzahl von Argumenten angezeigt wird?
Was tun, wenn das SSL-Zertifikat abgelaufen ist?
Was tun, wenn beim Starten von Tomcat eine ClassNotFoundException auftritt?
Fehler ExecJS :: RuntimeUnavailable: Was tun, wenn es auftritt?
ParseException: Was tun, wenn ein nicht analysierbares Datum erreicht ist?
Hinweise zur Überprüfung bei der Verwendung von Lombok
<Punktinstallation> Was tun, wenn Sie aufgrund eines Fehlers beim Erstellen einer Entwicklungsumgebung für das Rails-Lernen nicht fortfahren können?
Was ist zu tun, wenn ein bestimmtes Objekt in JSF convertDateTime nicht als Datum formatiert werden kann?
[Ruby / Rails] Was tun, wenn NoMethodError angezeigt wird, wenn eine destruktive Methode wie Filter verwendet wird?
Was tun, wenn bei Verwendung von Liferay 7 / DXP unter AWS ein SAX-Parser-Fehler auftritt?
Was tun, wenn im Testcode der Steuereinheit in Rails der Fehler "302" angezeigt wird?
[Schienen] Was tun, wenn die Ansicht zusammenbricht, wenn eine Nachricht mit der Fehlermethode angezeigt wird?
[Rails 6] Was tun, wenn nach der Einführung von haml ein fehlender Vorlagenfehler auftritt? [Super easy]
[IOS] Was Sie wissen müssen, bevor Sie ein Widget erstellen
Was ist zu tun, wenn Ausdrucksoperatoren nicht auf die Methodenbindung angewendet werden können?
Was tun, wenn mysql2 einen Bundle-Installationsfehler erhält?
Was tun, wenn der Befehl Rails unbrauchbar wird?