Ich sehe diese seltsame Sache, bei der ich eine neue zusammengesetzte Komponente erstelle, das darin übergebene Feld jedoch null ist, wenn es sich in einem innerhalb einer anderen zusammengesetzten Komponente befindet.
Hier ist zunächst die Ausgabe, die zeigt, wie dieser Wert, den ich weitergebe, überall außer der tiefsten Ebene funktioniert:
Ausgabe
Code: Select all
page xhtml = "hello!"
outer component = "hello!"
inner component direct = "hello!"
inner component value = "hello!"
include = "hello!"
inner component direct = "hello!"
inner component value = ""
Hier sind die verschiedenen Bits:
Code: Select all
ApplicationControllerCode: Select all
@ApplicationScoped
@Named
public class ApplicationController implements Serializable {
@Getter @Setter private String input = "hello!";
}
Code: Select all
page.xhtmlCode: Select all
base xhtml = "#{applicationController.input}"
Code: Select all
outerComponent.xhtmlCode: Select all
outer component = "#{cc.attrs.controller.input}"
Code: Select all
includedFile.xhtmlCode: Select all
include = "#{cc.attrs.controller.input}"
Code: Select all
innerComponent.xhtmlCode: Select all
inner component direct = "#{applicationController.input}"
inner component value = "#{cc.attrs.value}"
Mobile version