2009-12-10 6 views
4

Есть ли у кого-нибудь опыт работы с JSR 330 против Guice? Из того, что я собираю, Guice не является реализацией JSR 330, но если это что-то вроде Hibernate и JPA, реализация поддерживает множество дополнительных функций, отсутствующих в API. Поскольку я уже использую GWT-Dispatch, Warp-persist guice-serlvet и т. Д., Можно ли что-нибудь получить, перейдя на контейнер EJB, поддерживающий JSR 330?JSR 330 и совместимость с Guice

ответ

6

Цитируя официальный анонс почты, FYI: JSR-330 support now in Guice SVN:

Я реализовал поддержку JSR-330 к Guice. Этот JSR стандартизирует аннотации, такие как @Inject и интерфейсы провайдера для платформ Java . Он еще не определил, как настроены приложения , поэтому он имеет , не имеющий аналогов для модулей Guice.

Эта новая функция может вызвать боль для пользователей IDE. Так как теперь есть две анкеты @ Intjecti, IntelliJ и т. Д. предложит вам, когда понадобится импорт . Любой из них будет работать, но новые диалоги будут очень раздражающими! Хуже того, две аннотации @Named еще не эквивалентны. Поэтому, если вы применили неправильную аннотацию, вы получите ошибку конфигурации. Я думаю о способах решения этой проблемы.

Эта работа продолжается. Я рекомендую продолжать использовать старые com.google.inject аннотации до пыль поселяется. http://code.google.com/p/google-guice/wiki/JSR330

Это письмо было отправлено 7 сентября 2009 г. Это до вас, чтобы решить, если пыль осела, но я бы подождал немного больше и придерживаться Guice аннотаций в соответствии с рекомендациями.

+0

Это все еще в SVN - есть прогноз, когда произойдет релиз, содержащий это? –

+0

@ Thorbjørn Я не знаю, и я не вижу большого интереса для JSR-330 от Guice (http://markmail.org/thread/pysiphf5t6txuh5p). Меня это ничуть не удивляет: то, что Боб Ли и Роб Джонсон сделали с этой спецификацией, были чистым препятствием (очень близко к саботажу), и я считаю JSR-330 бедной, неудачной политикой. Очень грустный. –

+0

Согласовано. Я надеялся на конвергенцию гуса и шва, чтобы получить ту же независимость, что и для контейнеров сервлетов, но, видимо, этого не произойдет. Сегодня я добавил Weld к нашему основному автономному приложению, а наивная реализация добавила 10 секунд к времени запуска ... Вздох. –