1

と を含むカスタム コンポーネントがあり、textField(buttonボタンonClickの) からテキストを取得し、textField別のコンポーネントを呼び出します。

を呼び出したときに発生するエラーmainLayout.addComponent(new A(textField.getValue());は、 java.lang.IllegalStateException:コンポジション ルートの前に null 以外の値を設定する必要がありますcom.example.vaadpro

4

1 に答える 1

2

例外が示すように、CustomComponent に対して setCompositionRoot を呼び出す必要があります。

public class A extends CustomComponent {

  HorizontalLayout layout = new new HorizontalLayout(); 

  public A() {
    layout.add(new Label("Hello world!"));
    layout.add(new Button("Click me!"));

    setCompositionRoot(layout); // This is needed!
   }
}
于 2013-01-14T12:47:52.773 に答える