Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Но было бы странным дать разрешение на введение до super кода, который не может обращаться к полям класса.
И что же в этом странного? Это прекрасно решило бы мою проблему. Даже две проблемы. Вторая не такая существенная, но тоже неприятная. Видно её по названию newAutoCompleteSettings() под которым скрывается код инициализации настроек.
Т.е. код типа
DictAutoCompleteTextField(String id, String dictName, IModel<Dict> model) {
AutoCompleteSettings settings = new AutoCompleteSettings();
settings.setSetting1("value1");
super(settings);
}
я написать не могу, вынужден городить неуместный статический метод. Ну ладно, это, как я уже написал, проблема несущественная, хотя я бы предпочёл писать всю логику инициализации в одном месте.
Причём компилятор вполне умеет отделять такой код. Нельзя написать super(this.field), т.к. идёт обращение к this до вызова super.