У кого-нибудь есть опыт оценки BlazeDS и GraniteDS? Мне любопытно, что лучше интегрируется с Spring / Hibernate.





Если вы просто ищете простой RPC и обмен сообщениями, я бы выбрал Blaze. Реализации более зрелые и лучше проверенные, особенно в отношении обмена сообщениями. Обмен сообщениями в Granite основан на Comet и все еще довольно новый, насколько я помню. Подробности ниже ...
Blaze DS - это, по сути, стек, который включает RPC и некоторые простые службы обмена сообщениями через HTTP. Интеграция со Spring легко достигается с помощью реализации FlexFactory SpringFactory: просто введите имя класса в Google, и вы найдете код. Он не предлагает никакой дополнительной поддержки для вещей, связанных с Hibernate.
Granite DS быстро растет с точки зрения характеристик. Он больше конкурирует с LCDS, чем с Blaze DS. Он включает в себя возможность синтаксического анализа графов объектов Hibernate и чистой работы с ленивыми прокси. У них также есть инструмент под названием «Tide», который создает аналог сеанса в клиенте Flex для обеспечения уникальности сущностей. У них также есть явная поддержка сервисов, предоставляемых через Spring, EJB3 и Seam. Granite также имеет утилиту для генерации классов AS3 из ваших классов Java (хотя это несложно написать самостоятельно, если хотите).
Я работал с Granite около года назад, и у меня возникли проблемы с его правильным анализом графов объектов; Flash Player выдавал некоторые неприятные исключения низкого уровня. Я предполагаю, что с тех пор документация и реализация достигли зрелости, так что это больше не является проблемой. Тем не менее, я все еще не решаюсь рекомендовать его, так как я столкнулся с проблемами, и переключение на Blaze немедленно разрешило их без каких-либо проблем.
Несколько примечаний к комментариям Клиффа:
Итак, IMHO, если вы не разрабатываете небольшое приложение с довольно тривиальной моделью данных, вам следует перейти на GraniteDS.