Google Web Toolkit — всем прекрасный фреймворк для разработки Ajax элементов для веб-сайтов: никакого тебе JavaScript'a, одна Java 🙂
Но есть у него один минус: если ваш элемент требует получения данных с сервера, то общаться он хочет с Java servlet'ом. А значит ему нужен хоть какой-нибудь servlet container, а значит вы не можете поставить такое приложение на большинство хостингов.
Хорошая новость в том, что servlet container ему требуется самый минимальный. Т.е. для самого GWT подойдёт и самый дешёвый хостинг с поддержкой Java.
Другой вопрос — система управления контентом (CMS). Понятно, что без неё обходиться не хочется.
Первой моей идеей было использовать какую-нибудь CMS на JSP/Servlet'ах. Но быстрый поиск показал, что такие CMS либо убоги, либо требуют полноценного J2EE сервера. А это совсем другие требования к хостингу и другие деньги.
Поэтому я решил попробовать вставить элементы написанные на GWT в страницы сайта на Joomla.
Как оказалось, всё достаточно просто. URL к скрипту можно прописать прямо в статью, контейнеры для элементов размещаются там же обычным способом. Только обратите внимание, что некоторые редакторы Joomla съедают неизвестные им таги внутри статьи. Именно такая участь постигла таг script в TinyMCE, который стоит в Joomla по умолчанию.
Единственный непростой момент — необходимость замапить сервлет на тот же сайт, где стоит и Joomla. Я реализовал это с помощью mod_jk и директив JkMount у Apache httpd. Тут, теоретически, может крыться проблема для размещения на хостинге, т.к. директивы JkMount можно прописывать только в httpd.conf. Но эта проблема решаема, зависит от хостинга.
P.S. Да, я знаю, что бэкенд может быть и на PHP и на чём угодно. Но там столько кода нужно лишнего писать...