|
|
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
Изучаю EJB3. Посмотрел сановские примеры работы EJB + Web Tier. Возникли такие вопросы: В примерах используется набор entity-классов, которые мапятся на соответсвующие таблицы БД. Те, в пакете entity есть классы с анотацией @Entity: Accоut, Customer ... Также есть пакет util, в которм - аналоги этих классов - простые бины, содержащие теже самые поля + кое-какие бизнес методы: AccountDetail, CustomerDetail. Session bean - AccountController выглядит так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. Те метод createAccount принимает AccountDetails который заполняется на уровне Web презентайшн. Затем создается Account - все его поля аналогичны AccountDetails). Тоже самое с получение списка, возвращется лист Account-ов, создается аналогичный лист AccountDetails, который и возвращается. Зачем использовать по сути 2 одинаковые модели ? Почему нельзя использовать только классы модели из пакета entity в том числе и на презентайшен уровне ? Почему нельзя на презентайшен уровне создать Account и передать его прямо в метод createAccount ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 15:45:53 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
это паттерн Data Transfer Object имхо. по сути здесь лишний, я всегда сразу фигачу entity Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 16:22:35 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
AndreySJЗачем использовать по сути 2 одинаковые модели ? Почему нельзя использовать только классы модели из пакета entity в том числе и на презентайшен уровне ? Почему нельзя на презентайшен уровне создать Account и передать его прямо в метод createAccount ? Когда модели совпадают это жуткое убожество. Но иногда бывает удобно подготовить данные для уровня презентации. Тогда одна модель трансформируется в другую. А тот пример что вы нашли, наверное тупое следование J2EE паттернам. Можно ссылочку если не сложно. Лично я в своих проектах всегда предпочитаю делать сквозную модель на все уровни. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 16:26:48 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
это такое старое джей ту ии поверье (dto, valueobject, form) довод: LazyInitializationException но это не проблема. на самом деле entity на presentation уже модно. глянте книжки по хиберу там это есть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 16:28:21 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
http://java.sun.com/javaee/5/docs/tutorial/doc/JavaEETutorialFront.html (Download Tutorial Bundle) там док с примерами. Пример - examples\dukesbank\dukesbank-ejb ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 16:34:27 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
AndreySJhttp://java.sun.com/javaee/5/docs/tutorial/doc/JavaEETutorialFront.html (Download Tutorial Bundle) там док с примерами. Пример - examples\dukesbank\dukesbank-ejb java.sun.com/javaee/*/tutorial вообще один из самых убогих материалов по Java которые я когда либо встречал. Почитайте что ли хороших книжек, вместо него. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 16:57:25 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
Спасибо. Понял. Читаю и книги, но хотел попробовать примеры. Еще вопрос: Подскажите плиз как правильно использовать Stateful Session Bean например с JSF. Проблема такая. Допустим есть Stateful Session Bean (SFImpl), внутри которого есть ссылка на Stateless Session Beab (SSImpl) : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. C JSF связан какой то managed bean - ManagedBean: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Так как Stateful Session Bean связан с конкретным пользователем, но метод ManagedBean.confirm() могут вызывать любые пользователи как правильно организовать работу с Stateful Session Bean в многопользоветельской среде ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 17:13:56 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
jsf+ejb3 = a lot of pain как добиться такого injectionа Код: plaintext 1. 2. 3. 4. 5. 6. альтернатива http://www.jboss.com/products/seam/whyseam можно плакать http://icoloma.blogspot.com/search/label/jsf нагуглил http://www.tavutaito.fi/tutorials/jsf-facelets/index.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 18:22:11 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
AndreySJТак как Stateful Session Bean связан с конкретным пользователем, но метод ManagedBean.confirm() могут вызывать любые пользователи как правильно организовать работу с Stateful Session Bean в многопользоветельской среде ? Ваапче-то для Statefull там должно быть все прозрачно, пользовательская сессия должна без проблем передаваться. Хотя я только теоретик JSF/EJB. Так как на практике эти технологии буду использовать только по нужде и никогда по собственому желанию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 18:34:17 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
если речь об этом то можно в сессионном managed bean'е держать ссылку на StatefulSB. (но лукапить надо самому) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 18:55:12 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
Те, если JSF-ый managed bean (ManagedBean) объявить принадлежащим scope SESSION, то такое объявление: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2007, 19:19:06 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
вот Код: plaintext это требует, что бы web layer вашего приложения грузился хитрым classloaderом который реализует такой injection. можно мне ссылку про это ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 10:22:16 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
В спеке J2EE 5 классы, поддерживающие DI. Component classes supporting injection: Servlet: servlets, servlet filters, event listeners JSP: tag handlers, tag library event listeners JSF: scoped managed beans JAX-WS: service endpoints, handlers EJB: beans, interceptors Java EE platform: main class (static), login callback handler Реально я пока проверял на сервлетах - работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 10:32:48 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
у..у мля .. надо будет читкануть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 10:46:36 |
|
||
|
EJB Entities Model + WEB Model
|
|||
|---|---|---|---|
|
#18+
AndreySJВ спеке J2EE 5 классы, поддерживающие DI. Component classes supporting injection: Servlet: servlets, servlet filters, event listeners JSP: tag handlers, tag library event listeners JSF: scoped managed beans JAX-WS: service endpoints, handlers EJB: beans, interceptors Java EE platform: main class (static), login callback handler Реально я пока проверял на сервлетах - работает. Java EE platform: main class (static) это что такое? Как туда инжектить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 11:56:26 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34703264&tid=2144993]: |
0ms |
get settings: |
16ms |
get forum list: |
22ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
44ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
81ms |
get tp. blocked users: |
2ms |
| others: | 330ms |
| total: | 523ms |

| 0 / 0 |
