|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Пагинация таблицы работает в контексте всей страницы, ибо в ещё недрах присутствуют переменные хранящие текущую страницу, количество записей на странице и прочую хрень типа кода обработки некст прев и тп. В контексте региона, выдранного с другой страницы это все добро с ходу не работает и нужно допиливать руками. Может уже в последних релизах апекса что то и сделали. Начинал работать с ним ещё с 3 версии. Сейчас 4.2 вроде бы. Уже не слежу. Но на текущий момент я свой выбор сделал. Это extjs и java web сервер заточенный именно под задачу обмена json данными с oracle и написанный буквально за неделю(когда писал свой прошлый пост, ещё такого плана и в мыслях не было :) ). Вполне вероятно, что апексу помашем ручкой на прощанье в ближайшее время. Пока же jmeter показывает неплохие результаты работы нового вебсервера. При 100 запросах, требующих формирования выборки в оракле (таблица около 10000 записей. Отобранное количество примерно 400. Возвращает в интерфейс страницу в 50) в 10 секунд (10 веб запросов в секунду) показывает время отдачи данных на веб запрос от 300мс до 2 секунд. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 23:26 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Блин, а мы жуем этот кактус и нормально получается делать высоконагруженные приложения :) Тормозов апекса не ловили - если что-то тормозит, это выборки данных, которые всегда можно ускорить различными методами. Вот что реально боль и страдание - это запуск одной страницы (один page_id) сразу в нескольких вкладках. Да и ajax-ом грустно не иметь возможности стандартно передавать регионы. Если отходить от "визиточных сайтов", то приходится познавать все прелести HTML + CSS + JS и логики сервера на PLSQL. Есть вещи, которые перенастроить в апексе нельзя - например, обычный отчет в любом шаблоне апекс генерирует с ошибками в html! достаточно сделать группировку в отчете - и пожалуйста, несколько элементов на странице с одинаковым id! Очень злит постоянное решение этих ребусов! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2014, 18:50 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
kuz9000Блин, а мы жуем этот кактус и нормально получается делать высоконагруженные приложения :) Тормозов апекса не ловили - если что-то тормозит, это выборки данных, которые всегда можно ускорить различными методами. Вот что реально боль и страдание - это запуск одной страницы (один page_id) сразу в нескольких вкладках. Да и ajax-ом грустно не иметь возможности стандартно передавать регионы. Если отходить от "визиточных сайтов", то приходится познавать все прелести HTML + CSS + JS и логики сервера на PLSQL. Есть вещи, которые перенастроить в апексе нельзя - например, обычный отчет в любом шаблоне апекс генерирует с ошибками в html! достаточно сделать группировку в отчете - и пожалуйста, несколько элементов на странице с одинаковым id! Очень злит постоянное решение этих ребусов! То то и оно. А если уж познавать прелести, то почему бы не облегчить себе жизнь использованием хотя бы того же extjs. Пишу на нем как на обычном ООП языке, как на java, а получаю html, хотя его в коде нет ни строчки. И с css то же самое. И получается интерфейс отдельно. Данные отдельно. Поменять потом если нужно будет интерфейс, например расположение, или дополнить функциональность можно даже не залезая в апекс. И да, используя extjs открыть несколько окон или вкладок одного интерфейса с разными данными вообще не проблема. Никакие page_id и прочие itemы на это не влияют... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2014, 22:17 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Вот тут ребята продают готовое решение ExtJs + Apex FOEX и не дешево продают Так что вопрос, какие JS библиотеки использовать с Apex и использовать их вообще, это вопрос привычки и вдохновения ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2014, 12:16 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Что-то подобное FOEX должно появляться в APEX 5.1 New Multi-Row Edit Region Type – Define a new region type with a modern UI for updating multiple rows of data and allow multiple regions on one page. А тут чем дело кончилось? http://suppler.blogspot.ru/2013/08/blog-post.html Где можно скачать этот плагин на тестирование? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2014, 07:18 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Люля, Я для своего проекта загнал http://demos.telerik.com/kendo-ui/grid/index в плагин. Единственный минус - зависимость от pl/json. В планах перевести выдачу данных с сервера с json на xml, тогда будет проще выставить демку на apex.oracle.com ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2014, 12:13 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Хороший вопрос почему ораклисты предпочли выбрать в свое время jquery против extjs. Что такого замечательного умеет делать extjs что не умеет делать jquery ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2014, 23:10 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
ferimorХороший вопрос почему ораклисты предпочли выбрать в свое время jquery против extjs. Что такого замечательного умеет делать extjs что не умеет делать jquery Потому, что они заботятся о тебе и твоем кошельке: jquery бесплатен, а для extjs надо покупать лицензии. А так, для самостоятельных работ, никаких препятствий нет, даже книжка по этой теме была. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2014, 11:07 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
ЛюляЧто-то подобное FOEX должно появляться в APEX 5.1 New Multi-Row Edit Region Type – Define a new region type with a modern UI for updating multiple rows of data and allow multiple regions on one page. Это все конечно здорово, но "у нас" не применимо, т.к... фиксация изменений делается нашей процедурой! Это не хорошо, не плохо, а один из подходов к работе с триггерами, и он решительно исключен запрятанными коммитами апекса :( ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2014, 14:50 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
А между тем я уже отказался от APEX для Ext JS совсем. Для обработки json обмена с Oracle реализовал небольшой WEB-сервер, написанный на Java (jar файл 35 кБ :) ). Супер наворотов у него нет. Делает только самые необходимые действия. 1. Отдает статику. Естественно есть поддержка кэширования статики. Проверка даты изменения статичного файла по хедерам. 2. Транслирует GET, POST параметры полей в json (или берет уже готовый при отправке jsonData в ajax request-ах) и передает в оракловую процедуру через CLOB переменную, где она уже парсится с использованием PL/JSON. Возврат результата так же в json через CLOB переменную. Результат из CLOB отдается в браузер. 3. Вот только вчера добавил поддержку загрузки бинарных данных для скачивания файла, содержимое которого на самом деле генерится опять же процедурами но с использоваинем для обмена м/у Оракл и веб сервером BLOBов. 4. Есть поддержка GZIP. Для статик файлов - файл шифруется в gz формат (7-zip ом, например). и размещается в каталоге статика. Веб сервер на запрос, например, mycode.js сначала в статике проверяет наличие файла mycode.js.gz и если находит, то отдает его. В итоге тот же ext-all.js из 4 мБ превращается в 300 кБ. 5. Соединение с Oracle через JDBC. Используется пул соединений ( http://commons.apache.org/proper/commons-dbcp/ ) 6. Фиксирует сессии при аутентификации. Выполняется путем запуска в оракле процедуры аутентификации, которая возвращает true или false ну и данные сессии в json. 7. Реализовал поддержку TLS, но работу не проверял. Возможности не было... Работает на OC Windows и Linux (у нас крутится на CentOS, на других не пробовали). Кому интересно, можете связаться со мной по координатам, указанным вот тут ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2014, 17:16 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Не в обиду конечно будет сказано, но то что вы тут пишете, очень похоже на сравнение самодельного велосипеда (а точнее самоката), который прекрасно решает только нужные вам задачи (сгонять в ларек за пивом), с серийным автомобилем, который быстро и комфортно решает задачи бизнеса. Все эти фразы, типа "я за полчаса написал такое, что ораклу и не снилось" выглядят мягко говоря смешно. APEX решает свои задачи, а ваш велосипед - свои. Масштабы к сожалению несравнимы. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2014, 21:21 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
NoGotНе в обиду конечно будет сказано, но то что вы тут пишете, очень похоже на сравнение самодельного велосипеда (а точнее самоката), который прекрасно решает только нужные вам задачи (сгонять в ларек за пивом), с серийным автомобилем, который быстро и комфортно решает задачи бизнеса. Все эти фразы, типа "я за полчаса написал такое, что ораклу и не снилось" выглядят мягко говоря смешно. APEX решает свои задачи, а ваш велосипед - свои. Масштабы к сожалению несравнимы. Может Вам и смешно, но здесь общаются не только мегаразработчики с мегапроектами под миллионы пользователей. Кому то может будет интересен и велосипед для быстрой разработки каких-то небольших задач. И уж тем более решение небольшой задачи никак не требует её решения на Апексе. Хотя... Если быть более точным - у нас есть среда разработки на серверной стороне - это PL/SQL и есть люди, которые по каким то соображениям хотят использовать именно ExtJS. А это среда разработки клиентской стороны. Примение здесь Апекса совсем ни к чему. Так что скорее это прикручивание ExtJS к Apex больше похоже на создание велосипеда из... другого велосипеда. Для мегапроектов я бы стал использовать уж точно ни своё решение, ни Apex. Я ни сколько не хвалю своё решение. Я просто констатирую итог всего моего рассуждения на предыдущих страницах. Либо использовать Apex по полной и не париться с ExtJS и получить (моё личное мнение) ограничения по функциональности в создании юзеринтерфейса, либо заморачиваться ExtJS, но тогда стоит подумать, что будет на серверной стороне - apex или любой другой скриптовый язык (некоторые даже часто под мегапроекты используются), который еще знать надо, либо какие то промышленные гейты для JSON, ну или изучить моё решение для небольших задач. Всё равно задача Апекса в таких случаях начинает сводиться чисто к ведению сессий и аутентификации. PS. Прошу прощения, если кого-то ввожу в заблуждение, думал в этой ветке писал о том, что у нас это дело используется под небольшие задачи с количеством пользователей не больше сотни и доступом через внутренние сети (ipsec туннели) из десятка городов России, включая такие удаленные, как Норильск и Красноярск. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2014, 16:12 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
bankir1980 Либо использовать Apex по полной и не париться с ExtJS и получить (моё личное мнение) ограничения по функциональности в создании юзеринтерфейса, либо заморачиваться ExtJS, но тогда стоит подумать, что будет на серверной стороне - apex или любой другой скриптовый язык (некоторые даже часто под мегапроекты используются), который еще знать надо, либо какие то промышленные гейты для JSON, ну или изучить моё решение для небольших задач. bankir1980Всё равно задача Апекса в таких случаях начинает сводиться чисто к ведению сессий и аутентификации. Не нужен для этого апекс, и использовать его чисто для этого не следует. Апекс это не веб сервер с парочкой процедур авторизации, которые и так не сложно написать. Это фреймворк. Он используется для декларативного программирования. Программируете шаблоны, плагины и т.д., в результате на определенном уровне интерфейс создается декларативно, знание extjs уже не нужно. Получаете плюшки от такого подхода в дальнейшем, облегчаете себе сопровождение и дальнейшую разработку. Причем для основных не extjs задач шаблоны html уже все написаны, да и плагины под extjs встречаются готовые. В случае с extjs нужно потрудиться, чтобы все интегрировать, это да, апекс изучать нужно серьезно, специалисты нужны, работы много. Эффект меньше, чем от использования стандартного функционала. А есть ли желание разрабатывать декларативно и заниматься такой интеграцией или же отказываться от апекс или же совмещать декларативную разработку апекс с его элементами с разработкой элементов на extjs - вот в этом и есть выбор в данном случае. В зависимости от задачи декларативная разработка это не всегда обязательно хорошо, зато даёт много плюшек. Каждый сам решает, что для него важно в каждой конкретной ситуации. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2014, 20:45 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
SvDevНе нужен для этого апекс, и использовать его чисто для этого не следует. Апекс это не веб сервер с парочкой процедур авторизации, которые и так не сложно написать. Это фреймворк. Он используется для декларативного программирования. ... Каждый сам решает, что для него важно в каждой конкретной ситуации. Ну вот и я о том же. Если решили использовать ExtJs, то стоит подумать, использовать ли на серверной стороне Apex. Зачем тянуть 2 фреймворка? Мы свой выбор сделали, который показал, что в НАШИХ условиях на НАШИХ задачах мы не прогадали. Чего и другим желаю :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.08.2014, 09:56 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
bankir1980SvDevНе нужен для этого апекс, и использовать его чисто для этого не следует. Апекс это не веб сервер с парочкой процедур авторизации, которые и так не сложно написать. Это фреймворк. Он используется для декларативного программирования. ... Каждый сам решает, что для него важно в каждой конкретной ситуации. Ну вот и я о том же. Если решили использовать ExtJs, то стоит подумать, использовать ли на серверной стороне Apex. Зачем тянуть 2 фреймворка? Мы свой выбор сделали, который показал, что в НАШИХ условиях на НАШИХ задачах мы не прогадали. Чего и другим желаю :) То, что вы делали, сделали до вас - FormSpider . Стоит недорого. Внутри Tomcat, Java, JavaScript, ExtJS и JQuery для мобайла. Для разработчика только PL/SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2014, 21:31 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
как всегда пролеталbankir1980пропущено... Ну вот и я о том же. Если решили использовать ExtJs, то стоит подумать, использовать ли на серверной стороне Apex. Зачем тянуть 2 фреймворка? Мы свой выбор сделали, который показал, что в НАШИХ условиях на НАШИХ задачах мы не прогадали. Чего и другим желаю :) То, что вы делали, сделали до вас - FormSpider . Стоит недорого. Внутри Tomcat, Java, JavaScript, ExtJS и JQuery для мобайла. Для разработчика только PL/SQL. Это не так. Вы привели в пример фреймворк для веб разработки, т.е альтернативу Апексу, который обслуживает и клиентскую и серверную сторону. Я же написал чистый веб сервер - шлюз для json обмена с ораклом. На клиентской стороне у меня extjs, на серверной процедуры оракула. Сравнениe мягкого и зелёного :) Но реклама удалась. Теперь я в курсе наличия такого платного фреймворка. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 23:26 |
|
ExtJS в разрезе апекса. за и против.
|
|||
---|---|---|---|
#18+
Интересно было почитать переписку почти 6-ти летней давности :) Между тем, банк, в котором я внедрял все свои наработки развалился, сейчас все эти наработки работают в другом банке :) За это время java веб сервер переписал в Web App приложение (war) и теперь оно работает в контейнере на Jetty сервере. Всё работает стабильно. На веб клиенте пишу на ExtJs 6-й версии, в котором по сравнению с 4-м появились новые полезные плюшки для более быстрой разработки. На сервере - pl/sql пакеты. Простой пример вывода таблички. На ExtJs (чисто пример, без использования sencha cmd и прочих плюшек) Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40.
На оракле: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
jwg_utils - это просто вспомогательный пакет для генерации данных в pljson объект из SQL с возможностью привязки переменных и спецификой extjs (обработка фильтрации, сортировки, пагинации, запрашиваемой из extjs, подсчет общего количества записей по запросу) В данном примере web клиент для получения данных таблицы дёргает урл '/json/public@jwg_test.get_table', а в результате вызывается jwg_test.get_table_public Кому интересны подробности, пишите в личку, т.к. обсуждение этой технологии выходит за рамки Oracle APEX :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2020, 23:56 |
|
|
start [/forum/topic.php?fid=50&msg=38727119&tid=1873918]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
183ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 300ms |
0 / 0 |