Vaadin调用通过另一个组件创建一个组件

时间:2013-01-14 09:36:25

标签: vaadin custom-component

我有一个自定义组件,其中包含textFieldbutton,我想要onClick(按钮),从textField获取文本并调用另一个成分

我拨打mainLayout.addComponent(new A(textField.getValue());时收到的错误是 java.lang.IllegalStateException:必须在com.example.vaadpro之前将组合根设置为非空值。

1 个答案:

答案 0 :(得分: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!
   }
}