Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
19.02.2019, 17:21
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
Имеется веб приложение: jdk1.8.0_171, GlassFish5, Primefaces 6.2, Spring framework 5.0.2, ManagedBeans. Т.к. @ManagedBean - deprecated, решил перейти на CDI, заменил: @javax.faces.bean.ManagedBean => @javax.inject.Named @javax.faces.bean.RequestScoped => javax.enterprise.context.RequestScoped @javax.faces.bean.ViewScoped => @org.omnifaces.cdi.ViewScoped @javax.faces.bean.SessionScoped => @javax.enterprise.context.SessionScoped Запускаю: все бины создаются как синглтоны при инициализации приложения, никакого управления бинами в соответствии с их областью видимости в веб-контейнере не происходит. Что надо еще сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.02.2019, 11:02
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexus, У вас используется Mojarra + OmniFaces ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.02.2019, 12:02
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
cossack5publexus, У вас используется Mojarra + OmniFaces ? Да: Mojarra 2.3.3.99.payara-p5 OmniFaces version 3.2 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.02.2019, 13:00
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexus, Попробовал у себя, вроде работает из коробки (только у меня Mojarra 2.4). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.02.2019, 17:58
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
cossack5publexus, Попробовал у себя, вроде работает из коробки (только у меня Mojarra 2.4). Mojarra 2.4 не рекомендуют , payara-5.183 был на 2.4, а затем в payara-5.184 откатились обратно на 3.9. Но это не по теме. Проект достаточно большой, поэтому не понятно, в чем загвоздка. Но а если по теории: в glassfish CDI-контейнер WELD, насколько я понимаю, в приложении еще spring-движок. Как они интегрируются? При указании @Component - создается spring bean, а при @Named - ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
28.02.2019, 10:31
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexusНо а если по теории: в glassfish CDI-контейнер WELD, насколько я понимаю, в приложении еще spring-движок. Как они интегрируются? - сами по себе никак, надо делать дополнительные телодвижения, например навешивать на бины интерсепторы: Код: java 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.03.2019, 15:26
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
KachalovpublexusНо а если по теории: в glassfish CDI-контейнер WELD, насколько я понимаю, в приложении еще spring-движок. Как они интегрируются? - сами по себе никак, надо делать дополнительные телодвижения, например навешивать на бины интерсепторы: Код: java 1.
Можно складывать CDI-бины в ApplicationContext через кастомный BeanFactoryPostProcessor ( пример ). Можно складывать спринговые бины в CDI ( пример ). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.03.2019, 16:36
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
Я еще вот такую тему нашел: Integrate JSF 2.2, CDI with Spring Framework . Буду пробовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.03.2019, 17:37
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexusЯ еще вот такую тему нашел: Integrate JSF 2.2, CDI with Spring Framework . Буду пробовать. Так у вас Spring все-таки ? и JSF-аннотации работают, а CDI нет ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
07.03.2019, 11:24
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexus, убедитесь, что у вас есть файлик beans.xml (где именно не помню, но скорее всего в META-INF, погуглите про него) Без этого файлика контейнер бинов CDI не будет сканировать модуль на наличие бинов. Т. е. в каждом модуле, где используете CDI, должен быть beans.xml ... |
|||
:
Нравится:
Не нравится:
|
|||
|
12.03.2019, 09:53
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
cossack5publexusЯ еще вот такую тему нашел: Integrate JSF 2.2, CDI with Spring Framework . Буду пробовать. Так у вас Spring все-таки ? и JSF-аннотации работают, а CDI нет ? Да. JSF-аннотации (@ManagedBean) и spring (@Component, @Service, ...) работают в старой версии, разрешаются между собой через org.springframework.web.jsf.el.SpringBeanFacesELResolver. При замене ManagedBean => @Named эти бины доступны и в spring, но создаются все как синглтоны (RequestScoped, SessionScoped при указании не работает). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
12.03.2019, 12:40
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexusЧто надо еще сделать? Самое правильное - не городить огород из "модных" технологий. А то вот оно, поддержание старых да дырявых штанов при помощи новых, но только носков. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
12.03.2019, 14:04
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
alex55555publexusЧто надо еще сделать? Самое правильное - не городить огород из "модных" технологий. А то вот оно, поддержание старых да дырявых штанов при помощи новых, но только носков. нет ... |
|||
:
Нравится:
Не нравится:
|
|||
|
12.03.2019, 20:17
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
Да кому нужен этот JSF. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.03.2019, 09:12
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexusИмеется веб приложение: jdk1.8.0_171, GlassFish5, Primefaces 6.2, Spring framework 5.0.2, ManagedBeans. Что-то не понял. А зачем тут Spring? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.03.2019, 11:36
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
GarrickpublexusИмеется веб приложение: jdk1.8.0_171, GlassFish5, Primefaces 6.2, Spring framework 5.0.2, ManagedBeans. Что-то не понял. А зачем тут Spring? Более интересный вопрос - что у него стоит в вершине стека? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 09:28
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
GarrickpublexusИмеется веб приложение: jdk1.8.0_171, GlassFish5, Primefaces 6.2, Spring framework 5.0.2, ManagedBeans. Что-то не понял. А зачем тут Spring? А зачем вообще нужны фреймворки и библиотеки? Можно все написать самому, и не париться, в том числе и сервер приложений и самому слушать порт 80, зачем брать готовый... В приложении Spring используется для реализации технологий, не связанных с контейнером web, в частности Spring Data JPA, Spring Aspect и т.д. maytonGarrickпропущено... Что-то не понял. А зачем тут Spring? Более интересный вопрос - что у него стоит в вершине стека? Что в данном случае подразумевается под вершиной стека? Фабрика бинов Spring работает отдельно, ManagedBeans управляются web-контейнером. В процессе работы требуется из ManagedBeans обратиться к спринг-бину и наоборот. Это осуществляется через ссылку на контекст и org.springframework.web.jsf.el.SpringBeanFacesELResolver. Где должна быть вершина? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 10:02
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
Кто main ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 10:11
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexusА зачем вообще нужны фреймворки и библиотеки? Можно все написать самому, и не париться, в том числе и сервер приложений и самому слушать порт 80, зачем брать готовый... В приложении Spring используется для реализации технологий, не связанных с контейнером web, в частности Spring Data JPA, Spring Aspect и т.д. У меня такой "набор" вызывает ассоциации с Жигулями оттюненными в каком-то гараже, у которых теперь два руля и шесть педалей, причём один руль поворачивает только налево, а другой только направо. Зачем собирать такого монстра и потом плакаться что оно жутко неудобно и не совсем работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 11:28
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexusВ приложении Spring используется для реализации технологий, не связанных с контейнером web, в частности Spring Data JPA, Spring Aspect и т.д. Для persistence есть тот же хибер, ну и куча всего другого. Аспекты наверняка используете для задач, которые легко решаются простым наследованием. То есть весь спринг идёт лесом, вместе с его недокументированностью и замороченностью. publexusФабрика бинов Spring работает отдельно, ManagedBeans управляются web-контейнером. Ну и зачем два раза управлять одним и тем же? Это как раз те два руля? Типа "по пацански"? publexusВ процессе работы требуется из ManagedBeans обратиться к спринг-бину и наоборот. Один руль поворачивается, но обязательно должен зацепляться за второй, иначе машина не поедет... publexusГде должна быть вершина? С чего начался прожект? Чего в нём сначала не было, а потом появилось? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 15:36
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
alex55555publexusВ приложении Spring используется для реализации технологий, не связанных с контейнером web, в частности Spring Data JPA, Spring Aspect и т.д.Для persistence есть тот же хибер, ну и куча всего другого. Аспекты наверняка используете для задач, которые легко решаются простым наследованием. То есть весь спринг идёт лесом, вместе с его недокументированностью и замороченностью.Да есть хибер, и, да, есть надстройка над хибером - Spring Data JPA которая добавляет много нового и удобного функционала, в чем проблема его использования? Понятная и ясная модель, документации и примеров, кстати, предостаточно. alex55555publexusФабрика бинов Spring работает отдельно, ManagedBeans управляются web-контейнером.Ну и зачем два раза управлять одним и тем же? Это как раз те два руля? Типа "по пацански"? Абсолютно не логичный пример. Это не одно и то же, это разные системы, в вашей аналогии, - это руль и газ. alex55555publexusВ процессе работы требуется из ManagedBeans обратиться к спринг-бину и наоборот.Один руль поворачивается, но обязательно должен зацепляться за второй, иначе машина не поедет... Определенное взаимодействие должно быть, например по аналогии с рулем и акселератором: на большой скорости для безопасности руль должен крутиться туже. А по вашей идеологии монолитности все должно быть единым целым, т.е. колеса, рулевая колонка и педаль газа должны вращаться синхронно с коленвалом, чтобы одним рычагом можно было управлять всеми системами сразу) alex55555publexusГде должна быть вершина?С чего начался прожект? Чего в нём сначала не было, а потом появилось? А что в автомобиле главнее: рулевое управление, трансмиссия или тормоз. Еще раз повторюсь, что все прекрасно работает в проекте. Просто ManagedBeans в соответствии с новой спецификацией CDI являются deprecated. И захотелось привести приложение в соответствие, но с ходу по схеме описанной выше, к сожалению, не получилось. Поэтому хотелось бы все же послушать не критику по выбор средств, т.к. в этом сколько людей - столько и мнений, а какой-нибудь дельный совет по теме. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 15:43
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
alex55555Аспекты наверняка используете для задач, которые легко решаются простым наследованием Если вы не в курсе, то область аспектов лежит совсем в дугой плоскости нежели наследование. И их функционал используется в том числе для решения таких задач, которые нельзя решить наследованием. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 15:46
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
Запускаю: все бины создаются как синглтоны при инициализации приложения, никакого управления бинами в соответствии с их областью видимости в веб-контейнере не происходит. Можешь показать кусок исходника или макет где эта проблема воспроизводится? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 15:54
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
publexusАбсолютно не логичный пример. Это не одно и то же, это разные системы, в вашей аналогии, - это руль и газ. О том и разговор, что Spring MVC и JSF - это как раз два руля, а не руль и газ. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.03.2019, 16:02
|
|||
---|---|---|---|
CDI: @ManagedBean to @Named |
|||
#18+
GarrickpublexusАбсолютно не логичный пример. Это не одно и то же, это разные системы, в вашей аналогии, - это руль и газ. О том и разговор, что Spring MVC и JSF - это как раз два руля, а не руль и газ. Я, вроде писал, что в моем проекте Spring не используется в технологиях веб, в том числе Spring MVC. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=59&mobile=1&tid=2121436]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 156ms |
0 / 0 |