diff --git a/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEControlForm.java b/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEControlForm.java index d22c364541..43419441e8 100644 --- a/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEControlForm.java +++ b/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEControlForm.java @@ -40,9 +40,8 @@ public class SWEControlForm extends SWEEditForm public SWEControlForm(final IStreamingControlInterface controlInput) { - super(controlInput.getCommandDescription().copy()); + super(controlInput.getCommandDescription()); this.controlInput = controlInput; - this.component.assignNewDataBlock(); buildForm(); } diff --git a/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEEditForm.java b/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEEditForm.java index f02f93bff0..bf1d0db4a4 100644 --- a/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEEditForm.java +++ b/sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEEditForm.java @@ -116,7 +116,10 @@ else if (component instanceof SimpleComponent) final ComboBox f = new ComboBox(); f.addStyleName(UIConstants.STYLE_SMALL); f.addItems(((Category) component).getConstraint().getValueList()); - //f.setValue(component.getData().getStringValue()); + if (!component.hasData() || component.getData().getStringValue() == null) { + component.assignNewDataBlock(); + } + f.setValue(component.getData().getStringValue()); layout.addComponent(f); f.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 1L; @@ -131,6 +134,9 @@ public void valueChange(ValueChangeEvent event) { final TextField f = new TextField(); f.addStyleName(UIConstants.STYLE_SMALL); + if (!component.hasData() || component.getData().getStringValue() == null) { + component.assignNewDataBlock(); + } f.setValue(component.getData().getStringValue()); layout.addComponent(f); f.addValueChangeListener(new ValueChangeListener() {