So I don't forget by the time we get back from new-years- The bug is in
ShellWizard.java:
https://issues.jboss.org/browse/FORGE-1407
private CommandLineParser populate(ShellContext shellContext, String
line,
final Map<String, InputComponent<?, ?>> inputs)
throws Exception
{
inputs.putAll(getController().getInputs());
CommandLineParser parser =
commandLineUtil.generateParser(getController(),
shellContext, inputs);
CommandLine cmdLine = parser.parse(line, true);
Map<String, InputComponent<?, ?>> populatedInputs =
commandLineUtil.populateUIInputs(cmdLine,
inputs);
if (getController().isValid())
{
if (getController().canMoveToNextStep())
{
// The bug is here. we are immediately moving to the next step
and removing all inputs that are not populated.
// this really needs to know if we have defaulted to next step
or actually moved there willingly
// it should not remove old choices until a new choice has been
made
getController().next().initialize();
inputs.keySet().retainAll(populatedInputs.keySet());
parser = populate(shellContext, line, inputs);
}
}
return parser;
}
--
Lincoln Baxter, III
http://ocpsoft.org
"Simpler is better."