У меня есть приложение, которое использует Swing, встроенные панели JFormDesigner, Spring и Spring RCP. Существует класс представления, который расширяет RCP AbstractView
для каждого представления, который имеет ссылки как на панель (как мы ее называем), так и на действия, чтобы он мог ими управлять. Каждое представление имеет одну главную панель (которая может быть построена с помощью JFormDesigner), на которую ссылается представление. Я не знаю, является ли это лучшим способом, но он работает довольно хорошо.
Основная проблема, с которой я столкнулся, заключается в том, что для определения простых слушателей, имеющих ссылку на панель, требуется слишком много настроек, если вы хотите сделать их компонентами Spring. И если вы этого не сделаете, вы должны передать ссылку на все необходимые ресурсы Spring (панель, интерфейс службы и т. Д.) Вручную, что также является большой работой. Я частично решил эту проблему, написав статический метод получения наиболее распространенных компонентов Spring для класса, который имеет доступ к контексту приложения.
В чем проблема настройки Spring для управления как действиями, так и формами? В нашем приложении панель была просто определена как свойство представления в конфигурации приложения, ничего особенного в этом нет.