|
|
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Добрый день! Пришел на проект где используют ADF. Опыта нет, изучаю. Коллеги подскажите, в у компонента в свойствах на странице *.jspx иногда встречается следующая запись: #{sessionScope['userName']} Что это значит? и откуда всетаки берется значения userName ? И где про это можно почитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 12:02 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Так это небось из JSP и EL, а не из самого ADF http://stackoverflow.com/questions/17590620/are-session-and-sessionscope-the-same-in-jsp-el sessionScope это такой Map из которого можно читать атрибуты сессии. Про сессию читать Servlet API и соответствующую спеку 'userName' - константа, ключ. sessionScope - способ достать значение по ключу из javax.servlet.http.HttpSession Откуда там это значение взялось? Ну, видать модуль аутентификации ADF запихнул. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 12:26 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
student42Коллеги подскажите, в у компонента в свойствах на странице *.jspx иногда встречается Какая версия JDeveloper'а ? Просто у меня 12'ый и соответственно расширение .jsf student42Что это значит? и откуда всетаки берется значения userName? Это "session scope variable" ))) Другое дело, что понимают под словом "variable". ВОЗМОЖНО (точно не уверен): 1. Поле какого-то Java Bean'а объявленного на уровне session scope (что IMHO наиболее логично) 2. или, как предполагает Blazkowicz, наследие JSP и мапится на HttpSession. 3. или и то и другое одновременно Я читал Oracle® Fusion Middleware Developing Fusion Web Applications with Oracle Application Development Framework 12c (12.1.2) E23132-01 + Oracle® Fusion Middleware Developing Web User Interfaces with Oracle ADF Faces 12c (12.1.2) E23447-01 Я бы сказал, что Ваш вопрос относится к 1-ой книжке к частям: "26.4 Using a Managed Bean in a Fusion Web Application" + "27 Understanding the Fusion Page Lifecycle" Только... лично я бы, читая книжку "из середины" ничего бы не понял ))) BlazkowiczsessionScope - способ достать значение по ключу из javax.servlet.http.HttpSession IMHO вряд ли Если я правильно понимаю (не уверен), то о чем Вы говорите, должно скорее выглядить как adf.context.sessionScope или adf.context.current.sessionScope НО на форумах уверяют, что ADF session != HTTP session и так хранить данные не корректно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 15:04 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevНО на форумах уверяют, что ADF session != HTTP session и так хранить данные не корректно Ну, sessionScope это абстракция. Если быть предельно точным, то да. Ведь ADF это не обязательно Web? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 15:20 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Как я понимаю, сессия ADF, например, может мигрировать между машинами в кластере. Тогда Web Server поменяется и соответственно HTTP sesssion просто создастся новая и все значения в javax.servlet.http.HttpSession накроются медным тазом. Но ТОЧНО не знаю. Не проверял, да и кластера у нас нет ))) Но по форумам это не только на кластере проявляется. Честно говоря, я вообще плохо понимаю, как современные технологии работают. Типа JDBC connection pool, pooling application module в ADF, миграция в кластере и так далее. Каждое конкретно вроде понятно ))), но как начинаешь думать, как оно умудряется с друг другом жить и в каких ситуациях будет глючить - голова пухнет и, в общем "Во многой мудрости много печали; и кто умножает познания, умножает скорбь" ( C ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 15:35 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevКак я понимаю, сессия ADF, например, может мигрировать между машинами в кластере. Тогда Web Server поменяется и соответственно HTTP sesssion просто создастся новая и все значения в javax.servlet.http.HttpSession накроются медным тазом. HttpSession точно так же реплицируется между нодами кластера. Об этом должно быть в спеке указано. Это одна из двух причин почему в ней нужно хранить Serializable объекты. Leonid KudryavtsevНо ТОЧНО не знаю. Не проверял, да и кластера у нас нет ))) Не читал, но мнение имею? :) Leonid KudryavtsevЧестно говоря, я вообще плохо понимаю, как современные технологии работают. LOL Leonid KudryavtsevТипа JDBC connection pool, pooling application module в ADF, миграция в кластере и так далее. Каждое конкретно вроде понятно ))), но как начинаешь думать, как оно умудряется с друг другом жить и в каких ситуациях будет глючить - голова пухнет и, в общем "Во многой мудрости много печали; и кто умножает познания, умножает скорбь" ( C ) Всё точно так же как в JEE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 15:43 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Фиг знает, в общем, народ на OTN жалуется, что хранят в HttpSession и данные пропадают. Ответ "ADF session != HTTP session", so храните в бинах или в application module. LOL Всё точно так же как в JEE. Как он умудряется (если умудряется) контекст DB-connection сохранять ? Ответ я знаю - "Плохо". Например документированной возможностью POST рекомендуют не пользоваться, т.к. при application module pooling может нафиг весь контекст DB-connection'а на DB-сервере потерять (состояние пакетов). Даже, (вот этого я уже не понимаю), в рамках одной транзакции ((( Нафига вводить в интерфейс методы, типа POST, которые "работают, но не всегда". То есть он работает, но если Ваш аппликайшен модуль в pooling не поместился.... ой... ой.... И об этом в документации ни слова. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 16:09 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevОтвет я знаю - "Плохо". Например документированной возможностью POST рекомендуют не пользоваться, т.к. при application module pooling может нафиг весь контекст DB-connection'а на DB-сервере потерять (состояние пакетов). Даже, (вот этого я уже не понимаю), в рамках одной транзакции ((( Кхм, это относится к любому "фреймворку" - если он не может гарантировать, что транзакция будет завершена(commit/rollback) за время одного http-реквеста, то и не стоит postChanges использовать - тут всё логично :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2015, 13:48 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevНафига вводить в интерфейс методы, типа POST, которые "работают, но не всегда". То есть он работает, но если Ваш аппликайшен модуль в pooling не поместился.... ой... ой.... И об этом в документации ни слова. Всё там есть (и рекомендации по использованию postChanges в рамках одного http-request и про "ручное управление" резервированием AM для любителей извращений "с продолжительным коммитом" ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2015, 13:56 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
student42Пришел на проект где используют ADF Работал с этим куском го...на. Очень сочувствую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2015, 18:18 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Ищущий Знанияstudent42Пришел на проект где используют ADF Работал с этим куском го...на. Очень сочувствую. очень категорично :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 13:13 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
MOHAX777очень категорично :) Ну я на проекте почти год провел. Лидом у нас был парень из оракла (раньше там долго работал), который ADF занимается много лет. Так что не на пустом месте такое высказывание) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 15:42 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Ищущий ЗнанияMOHAX777очень категорично :) Ну я на проекте почти год провел. Лидом у нас был парень из оракла (раньше там долго работал), который ADF занимается много лет. Так что не на пустом месте такое высказывание) А ведь на этом "авне" написаны большинство последних продуктов семейства Oracle Fusion, написаны Oracle Fusion Applications, админки и т.д.. Качество нормальное. Может у вас там место под офис какое-то не такое было? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2015, 00:32 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
brig_2000, Никогда не замечали, что часть продуктов Oracle на ADF, почему-то, требует определенного Weblogic с определенными патчами. Вот казалось бы с чего? А если серьезно мне ADF нравится тем, что красиво и быстро и не очень сложный прого вхождения. А не нравится тем, что: - актуальная версия библиотеки может не поддерживать актуальные версии браузеров (что уж про танцы чтоб старую заставить); - при смене версии ADF может так оказаться, что большая часть того, что Вы написали идет в топку и надо переделывать; - стандартные виджеты сделаны в html так, что внутрь тяжело залезть ибо добавляют слои абстракции (таблички или div), но перепахивающие стили так, что нормально внутрь ничего не вставишь. Правда на актуальном ADF я уже не пишу - все впечатления с 10-11 версий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2015, 10:24 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Сергей АрсеньевА если серьезно мне ADF нравится тем, что красиво и быстро и не очень сложный прого вхождения. Плюсуюсь Но на счет "...не очень сложный ... вхождения..." мне кажется это не совсем так. Базовые вещи, да это так. А копнешь поглубже и что бы нормально работало - полно нюансов с которыми нужно разбираться. В целом, достаточно удобная среда и действительно, что изумляет, что заявленные вещи действительно делаются "мышкокликаньем" и даже работают. И даже без единой строчки ручного кода. С одной стороны это хорошо, с другой плохо, т.к. не понимаешь как же оно внутри происходит. Две доки которые я привел (и прочитал), как я понимаю > 3 000 страниц + нужно читать доку по Grovy expression (я не читал) + штудировать и разбираться куски док по отладке именно ADF-контролов - в общем, объем "теоретических" знаний достаточно большой /если считать в страницах документации/ ((( С "мышкокликаньем" все хорошо, пока это работает. А вот когда отказывается работать, фиг поймешь от чего и с чем связано и где ошибся.... Сергей Арсеньев- стандартные виджеты сделаны в html так, что внутрь тяжело залезть ибо добавляют слои абстракции (таблички или div), но перепахивающие стили так, что нормально внутрь ничего не вставишь. У меня полностью "шитый" код: ADF + чистый JS для управления Oracle Map Viewer'ом. Местами разбирался с поведением стандартных контролов, вроде все было понятно. Дока более-менее хорошо описывает. Плюс есть глава в доке по созданию своих контролов. Но мне пока и просто iframe + AdfCustomEvent (JS) + ExtendedRenderKitService (Java) хватает. Сергей АрсеньевПравда на актуальном ADF я уже не пишу - все впечатления с 10-11 версий. По визуальным впечатлениям, 12 и 11 версия - день и ночь. Даже чисто по визуальным. Ну и JDeveloper 12 версии _значительно_ стабильнее работает, чем 11. MOHAX777Всё там есть (и рекомендации по использованию postChanges в рамках одного http-request и про "ручное управление" резервированием AM для любителей извращений "с продолжительным коммитом" ) ... Ссылку на блоги по данной теме с ходу найти не удалось. Вроде были тесткейсы когда и в рамках одного http-request работало не совсем ожидаемым образом. Сильно не разбирался. Просто в мозгу отложилось, что post'ом лучше не злоупотреблять. Каждая технология по отдельности - вроде все достаточно просто. А вот когда начинается наложение нескольких технологий друг на друга + не совсем тривиальные случаи - тут уже предсказать поведение достаточно сложно "ручное управление резервированием AM" - спасибо, посмотрю в документации. Ну например у меня частая проблема - банальный streetch. При некоторой комбинациях вложенности (не такой и большой, интерфейс не сильно "извращенный") элементов, в какой-то момент, начинает вести себя "не интуетивно понятным образом". ==== Коллега на совершенно обычном select'е при "мышкокликанье" получил: ORA-24777: use of non-migratable database link not allowed Смотришь на такую ошибку и глаза становятся большими и круглыми. И чем больше читаешь описание ошибки и блоги в И-нет, тем больше они округляются. Понимаешь, что "стою на асфальте я в лыжи обутый....". С ошибкой то разобрались, но таких "мелочей" при работе с современными средами, как грязи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2015, 16:18 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
Сергей Арсеньевbrig_2000, А если серьезно мне ADF нравится тем, что красиво и быстро и не очень сложный прого вхождения. Категорически не соглашусь - порог вхождения как раз весьма высок - любое отступление от туториала для "сделать чуть по-другому" и всё - ошибка, понять смысл которой без изучения большей части упоминавшегося тут Fusion Developer's Guide for Oracle Application Development Framework будет невозможно. Впрочем, успешность изучения сильно зависит от уровня использующего ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2015, 16:37 |
|
||
|
ADF: изучение
|
|||
|---|---|---|---|
|
#18+
MOHAX777 IMHO Тут все зависит от подхода к построению системы и организации работы. Меня всегда удивляет, когда на задачи "рисовать отчеты" работодатель (например РосТелеком, OeBS) ищет целый отдел программистов с опытом работы, знанием PL/SQL, SQL, умением оптимизировать запросы и так далее и с соответствующей зарплатой. Аргументируют это тем, что у нас сложная система, человек должен уметь..... Нафига? Наймите ОДНОГО архитектора / ведущего и десяток студентов/индусов/манильцев и они Вам будут клепать отчеты как пирожки в пекарне. AFAIK по своему опыту с реального проекта по внедрению OeBS. Что бы "рисовать формы" действительно _никаких_ знаний не требуется. Прошел стажеровку, мышку в руки и вперед. А разбираться "внутрях ADF" должны совсем другие люди. IMHO Но поскольку, часто, у нас каждый "и швец, и жнец, и на дуде игрец", возникают проблемы Но так обычно получается с любой сложной современной системой. Да еще привнесенной на российскую почву. Лично у меня, ADF 12 версии сильного отторжения не вызывает. IMHO хорошее, мощное средство. Которое, в 12 версии, еще и работает. Единственное претензия, что такая степень "вылизанности" должна была быть уже давно. Хотя мелкие баги и сейчас попадаются. Но скорее это исключения, подтверждающие правило (все остальное более-менее работает). AFAIK ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2015, 17:07 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38910977&tid=2125647]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 345ms |

| 0 / 0 |
