powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Страница без темплейтов
15 сообщений из 15, страница 1 из 1
Страница без темплейтов
    #37406068
апекссс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ, а можно сформировать страницу вообще без темплейтов? Чтобы в html был чистый лист?
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37406198
апекссс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Грубо говоря, функция возвращает уже html-страничку. И мне надо ее выводить,
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37406213
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Самый простой способ вывести сгенерированное содержимое, который я знаю:
конвертировать в BLOB и использовать WPG_DOCLOAD.download_file,

вызывая где-нибудь в процессах на запрос что-нибудь типа:
Код: plaintext
1.
2.
3.
4.
  OWA_UTIL.MIME_HEADER( 'text/html', false, 'UTF8' );
  HTP.p ('Content-length: ' || DBMS_LOB.getlength( p_str_blob ) );
  OWA_UTIL.http_header_close;

  WPG_DOCLOAD.download_file( p_str_blob );
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37406244
апекссс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А template как убрать? :)
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37406254
апекссс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я может быть, не совсем понятно выразился. У меня есть процедура, которая внутри себя формирует html-страничку (htp.p(блабла);)
И когда я эту процедуру вызываю в PL/SQL регионе, то содержимое его дополнительно обертывается в стандартный апексовский template, в результате чего там получается два <head> и много чего еще, из-за чего эта страничка неправильно работает. Мне надо, чтобы в страницу выводилось _только_ содержимое результатов работы этой процедуры и больше ничего :) Мне казалось, апекс должен позволять такое, но вот уже полдня бьюсь, не могу найти (
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37406588
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
указанный процедура WPG_DOCLOAD.download_file работает наподобии owa_util.redirect
Встретив эту функцию, он перестает выводить данные, возвращаемые со страницы, вместо этого берет данные из буфера WPG_DOCLOAD. т.е. никакие templat'ы или прочие данные со страницы выводиться не будут, только BLOB
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37406612
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
т.е. объясню проще, вызываете WPG_DOCLOAD.download_file в процессе on submit и все ваши HTP.p, регионы, item's и прочее не будут выводиться, только то что в BLOB, а именно, туда вам нужно поместить html-страничку.
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407291
апекссс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, более-менее понятно стало. Только как это все дело в blob конвертировать?
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407364
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Смотря в каком формате оно у вас хранится. Google в лапы. Но ладно уж, поделюсь кодом:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
declare
   p_str_clob clob;
   p_str_blob blob;

   dest_offset NUMBER :=  1 ;
   src_offset NUMBER :=  1 ;
   amount INTEGER := dbms_lob.lobmaxsize;
   blob_csid NUMBER := dbms_lob.default_csid;
   lang_ctx INTEGER := dbms_lob.default_lang_ctx;
   warning INTEGER;
begin
  select 'текст' 
  into p_str_clob 
  from dual;

  DBMS_LOB.CREATETEMPORARY(lob_loc=>p_str_blob, cache=>TRUE);
  DBMS_LOB.CONVERTTOBLOB( p_str_blob, p_str_clob, amount,dest_offset,src_offset,blob_csid,lang_ctx,warning );

  OWA_UTIL.MIME_HEADER( 'text/html', false, 'UTF8' );
  HTP.p ('Content-length: ' || DBMS_LOB.getlength( p_str_blob ) );
  OWA_UTIL.http_header_close;

  WPG_DOCLOAD.download_file( p_str_blob );
end;

Если будут проблемы с кодировками, можно использовать функцию convert
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407479
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
насчет blob точно не помню, может можно и без преобразований в BLOB выводить, попробуйте.
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407486
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но во всяком случае, если вам нужно вывести в кодировке отличной от той, что установлена на web-сервере, тогда только BLOB.
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407826
апекссс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пробую, вот только не получается - в вашем примере русские буквы выводятся как квадратики. Convertом пробовал - бестолку (
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407866
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С кодировками дело. Вам нужно посмотреть:

1. в какой кодировке у вас БД?
2. в какой кодировке интерпретируется страница в браузере?
браузер может взять кодировку из установок charset в html страницы, из OWA_UTIL.MIME_HEADER( 'text/html', false, 'UTF8' ) или настроек браузера, или даже использовать какие-то другие алгоритмы.

Либо в браузере "отобразить как" выберите нужную кодировку, либо используйте подходящий convert.
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407894
SvUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
т.е. в указанном примере данные у вас будут выводиться в той кодировке, в которой у вас БД. Но ваш браузер (см.выше) выбрал другую кодировку
...
Рейтинг: 0 / 0
Страница без темплейтов
    #37407999
апекссс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо вам огромное за помощь! С кодировкой разобрался :)
Будете у нас на колыме в москве, дайте знать, с меня много чего вкусного )
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Страница без темплейтов
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]