Я хотел бы знать, как вы решаете, по-видимому, низкую производительность разработки веб-приложений на основе Java EE по сравнению с другими стеками технологий (Seaside, Ruby on Rails и т.д.).
Ограничения:
- Готовое веб-приложение должно быть развернуто в контейнерах приложений, совместимых с Java EE.
- Если возможно, предыдущие инвестиции в решение на основе Java должны быть сохранены, то есть должна быть возможна нативная совместимость с системами и библиотеками на базе Java.
- Из-за структуры команды предпочтительной является Java как язык реализации, хотя менее экзотические языки на основе JVM (т.е. Groovy) также могут быть приемлемыми
- Полученная система должна быть архитектурно звуковой.
- Полученная система должна быть расширяемой и поддерживаемой
Чтобы не допустить, чтобы это уменьшилось в философскую дискуссию, меня интересуют только предложения, основанные на практическом опыте. Возможные примеры включают языки домена, рамки и MDSD.
Если вы укажете на абстрактный класс решений (например, MDA/MDSD), предоставьте подробную информацию о том, как вы его реализовали, а также информацию об общих ошибках и лучших практиках.
Если вы не согласны с предположением о том, что разработка веб-приложений на основе Java EE подразумевает низкую производительность, я хотел бы также услышать ваши аргументы.
EDIT: Поскольку ответов гораздо меньше, чем я ожидал, я также соглашусь с сообщениями об абортивных попытках, в основном расширяя вопрос "Как (не) повысить производительность при разработке веб-приложений на основе Java EE?".