Reputation: 35689
i try to set unique id for uibinder widget.but fail .my constructor look like below
public CustomUIWidget() {
initWidget(uiBinder.createAndBindUi(this));
this.getWidget().getElement().setId(DOM.createUniqueId());
System.out.println(this.getWidget().getElement().getId()); //put debug line here, value is empty
}
Upvotes: 3
Views: 2940
Reputation: 7498
This is working for me (using GWT 2.1):
ui.xml:
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" xmlns:g="urn:import:com.google.gwt.user.client.ui">
<g:HTMLPanel>
<g:Label text="test" />
</g:HTMLPanel>
</ui:UiBinder>
the widget:
public TestView() {
initWidget(uiBinder.createAndBindUi(this));
getWidget().getElement().setId(DOM.createUniqueId());
System.out.println(getWidget().getElement().getId());
}
This creates an output like gwt-uid-#
where # is an arbitrary number.
The rest of your code is working? It had often happened too my that I had a typo or the like in the ui.xml
file that didn't produce any visible error (i.e., no stacktrace) but still was erroneous.
Upvotes: 5