/**
* Get value for specified component.
*/
public String getInputValue(FormComponent component) throws Exception {
FormInput input = form.getFormInput(component.getName());
if (input.isArray()) {
int index = component.getIndex();
if (index < 0) {
throw new ConfigException("Input '" + component.getName() + "' has no index");
}
if (result != null) {
FormInputResult inputResult = result.getFormInputResult(component.getName());
if (index >= inputResult.getSize()) {
return NOT_AVAILABLE;
}
return inputResult.format(request, index);
} else if (data != null) {
return input.format(request, data, index, NOT_AVAILABLE);
}
} else {
if (result != null) {
return (String)result.getFormInputResult(component.getName()).format(request);
} else if (data != null) {
return (String)input.format(request, data);
}
}
return NOT_AVAILABLE;
}