I have a node with only a DialogComponentColumnNameSelection. When i add the node i can immediately execute it and the console display an error of index out of bounds. If i open the node and without to change nothing (the column is already selected) i press ok the execute is successfull. How can i force the red light before to open the node?
You must check if the value of your model is null or empty and afterwards if the column is in your table, if not, throw an InvalidSettingsException. (Oh inside the configure of the nodemodel)
e.g.
String s = yourSMObject.getStringValue();
if (s== null || s.isEmpty()) {
throw new InvalidSettingsException("Not valid reconfigure!");
}
if (inSpec.findColumnIndex(s) < 0) {
throw new InvalidSettingsException("Column " + s
+ " not found in input table, Please reconfigure!");
}