Oracle-club: FAQ - OWAS


Новости | FAQ | Ссылки | Темы | Утилиты | Documentation | Семинары
Продукт Oracle Reports 3.0 позволяет выводить еще и в
>rtf и в html.
>
>Кто-нибудь пробовал делать вывод отчетов в формате excel или word, или
>это вообще невозможно.


Если я правильно понял то можно так:
Если можно выводить в html то считай можно и в excel. Я у себя
(работаю не с Oracle Reports а с Oracle Web Server)
когда мне надо загрузить таблицу с данными пользователю
в excel делаю так:
1) выдаю прагму owa_util.MIME_header('application/vnd.ms-excel');
    что равнозначно строке Content-type: application/vnd.ms-excel
2) а затем просто табличку с данными

*) в браузере пользователя в aplications должна быть настроена
  реакция на vnd.ms-excel

>Есть ли у кого какой-нибудь опыт в решении задачи следующего типа: > >есть система на базе OWAS 3.01 (PL/SQL-картридж) и WG 7.3 на NT. Клиенты - >Internet-броузеры. Доступ закрыт паролем. Требуется найти способ передачи из >клиентской HTML-формы на сервер бинарного файла с компьютера клиента. На >сервере этот файл предпочтительно сохранить в файловой системе, но в базе >сохранить его имя. См. OWA Replacement Cartrige на http://govt.us.oracle.com Кто-то мне говорил, что то же самое есть в OWAS 3.0, но недокументировано, а в OAS 4.0 уже документировано (Используется поддерживаемый MS IE 4.0 & Netscape 4) Валерий Юринский
> > 2. Что сейчас заменяет OWS21 у Oracle и где взять посмотреть? Oracle Application Server 4.0 > > 3. Что более всего подходит для WS при взаимодействии с Oracle у других > > фирм (где взять посмотреть)? Можно взять OAS и скрестить его с Apache - зер гут (проверено) Кстати, кто использовал OAS 4.0 - как впечатления от скорости? (По моим ощущениям он крутится раза в 4 медленнее OWAS)
Вопрос: есть OWAS3 с 7.3 под NT. Написал небольшое приложение с аутентификацией пользователей по схеме Custom Authentication PER_PACKAGE. Все вроде работает, но изредка, по непонятной причине слетает PL/SQL картридж и слетает намертво. Никакой рестарт OWAS не выводит его из ступора. Только полная перезагрузка машины. А в логе появляется ошибка с нигде не документированным кодом: `Dispatcher` 321 1 0x2fff `OWS-04515: Subsystem COA async. methods yt::broken gets an exception wr_c_exec_nw. ` Ну чего с ним делать?
Вопрос: Я попробовал поставить OAS4. Конфигурация PII-333, 128MB RAM, NT Server 4.0 + SP4, OAS 4.0.7. > >Default site OAS-а не стартует: > >owsctl start > >Please wait while the command is being processed on host duet ... >Starting ORB processes... >waiting for ORB to be ready... >ORB is not responding. Please restart manually... >OWS-20214: The OAS processes can not be started, because the CORBA orb >processes can not be started. > >После чего в текущем каталоге обнаруживаются следующие файлы: > >mnorbmet295.out: >orb.mnorbmet caught exception IDL:omg.org/CORBA/COMM_FAILURE:1.0, exiting > >mnorbsrv274.out: >ydMain: orb.mnorbsrv caught IDL:omg.org/CORBA/COMM_FAILURE:1.0 from >d:\opt\mx\src\yo\yoc\yocorb.c 780, exiting > >Что с этим можно поделать? Ответ: Из Oracle CIS подсказали : Надо снести SP4 и оставить SP3. Все беды от него ;-) Ну не любит OWAS 4.x.x.x - 4-й сервиспак.

Вопрос :

Установили ОАS 4.0.7 не стартует ORB. Что делать?

Ответы :

Наверное, стоит SP4 для NT ? Тогда надо ставить заплатку!
Вопрос: Что нужно сделать или где в доках про это написано, чтобы использовать SSL 3.0 на OAS

Вопрос :

Установил под NT4 (SP4) - OAS4.0, Oracle 8.05. Переустановил yt40.dll (bug 768386). Установил все картриджи с samples.Вроде все настроил правильно - listeners, applications, cartridges. При попытке запустить пример HelloWorld любого картриджа получаю следующее сообщение - Can not service this request, please try again later Смотрю файл ORB.LOG и вижу следующее: `OWS-04517: Error indicated by broker in getting cartridges of type LiveHTMLSamples/LiveHTML. ` `OWS-04511: Error in grabbing cartridge type LiveHTMLSamples/LiveHTML from the subsystem. ` `OWS-04512: Request D8149D270400-3A90-E000-454CA8C00194 has internal error due to Error 4511. ` (тоже самое для PLSQL картриджа) Как это лечиться ? Чтение документации уже не помогает :)

Ответы :

1. У меня такое было при попытке работать на 64Мб RAM. 2.Это лечится одним методом : переходом на другую платформу..... Оракловый Web на NT (кроме версии 2.1) всегда был глюковатый (и это еще мягко сказано...:) 3.Попробуй поставить начальное значение свопа мегабайт этак 300! У меня на 64М работает и Oracle 8.0.5 и OAS 4.0.7! Кстати: насчёт глюкавости полностью поддерживаю!

Вопрос :

Стоит Oracle Web Server 2.1 на Unix Работает на порту 80 и еще 8ххх После переноса всего каталога в другое место при перезапуске (перемещение производилось от имени root а потом на весь каталог сменили владельца на Oracle7) оказалось что только при назначении порта >1025 все работает нормально, а wlctl21 на все порты <1024 стал выдавать следующее сообщение :
OWS-05721: The Web Listener pub failed to start: Oracle Web Listener 2.1 , Version 1.20in2 Copyright 1996 Oracle Corp. All Rights Reserved. Error: A failure occurred ( Permission denied ) when assigning a port ( domain: traapp.tranet.tomsk.su, address: 0.0.0.0, port: 80 ). Error: Failed to start the server. Error: The server could not initialize Information: The server is exiting Error: Companion oraweb2 process failed

Ответ :

Порты <1024 являются привелигированными, и только программа с EUID=0 может bind/listen на них. Владельцем программы должен быть привилегированный пользователь, как правило в Unix это root Надо запускать программу от root, а она после открытия порта должна сменить euid. pwd /export/home/oracle7/ows21/bin # Неправильное состояние # ! ! - позиции где можно отследить состояние EUID (s) -rwsr-s--- 1 oracle7 www 1079028 Sep 28 14:32 oraweb21 -rwxr-xr-x 1 oracle7 www 3102804 Sep 9 1996 owa -rwsr-s--- 1 oracle7 www 905360 Sep 28 14:32 wlctl21 -rwxr-xr-x 1 oracle7 www 869612 Sep 28 14:32 wrb21 # Делается так : chmod 4750 oraweb21 wlctl21 chown root oraweb21 wlctl21 # Правильное состояние -rwsr-s--- 1 root www 1079028 Sep 28 14:32 oraweb21 -rwxr-xr-x 1 oracle7 www 3102804 Sep 9 1996 owa -rwsr-s--- 1 root www 905360 Sep 28 14:32 wlctl21 -rwxr-xr-x 1 oracle7 www 869612 Sep 28 14:32 wrb21

Вопрос :

>Решил попробовать работать через ORACLE JDBC thin v 7.4.3 (взял на >www.oracle.com) и сразу получил грабли - >при выборке из полей с русским текстом получаю в ответ - ????????, то есть >не понимается кодировка. Charset в ORACLE RU8PC855, ORACLE v7.3.2.3 for >AIX, JDK v1.1.6. Программа выполняется на сервере (сервлет). >В доке написано, что драйвер может работать с любой кодировкой базы и ничего >дополнительно не требуется . Попробовал поставить JDBC v8.0.4 тоже самое. >Может что-то все-таки дополнительно надо установить?

Ответ :

Надо в unicode переводить вс_, что отображается клиентом по запросу с сервера.

Тема :

Использование Cookie

Вопрос :

Подскажите пожалуйста начинающему, в каком месте HTML документа можно вставить owa_cookie.send() , чтобы он сработал . Пробовал {HEAD} owa_cookie.send () {/HEAD} - выводит текст в HTML документ. Если в заголовке использую : htp.print(' {META HTTP-EQUIV="Set-Cookie" Content="cookie_cex=700; path=/; domain=orant.akhz.com"} ') ; то работает . Виктор .

Ответ :

Я пробовал примерчик и вот что получилось Посылать и принимать Cookie надо до открытия HTML-документа Пробовал на OWS 2.0.1 for NT - работало но со второго обращения к процедуре после введения параметров где-то надо дорабатывать - подскажите где ? Кто знает исходный текст прилагается : -- ввод login и пароля для авторизации через cookie procedure login(log in varchar2 default null, pwd in varchar2 default null) is v_login owa_cookie.cookie; v_password owa_cookie.cookie; BEGIN v_login.num_vals := 0; IF ( log is not null ) THEN -- отправка значений браузеру которые были введены через форму owa_util.mime_header('text/html', FALSE); owa_cookie.send('login', log ); owa_cookie.send('password', pwd ); owa_util.http_header_close; end if; -- опрос имени и пароля v_login := owa_cookie.get('login'); v_password := owa_cookie.get('password'); owa_util.mime_header('text/html', FALSE); -- проверка существования запрошенных данных IF (v_login.num_vals > 0) THEN -- отправка значений браузеру которые были приняты owa_cookie.send('login', v_login.vals(1) ); owa_cookie.send('password', v_password.vals(1) ); owa_util.http_header_close; htp.htmlOpen; htp.header(3,' Cookie :' ); htp.header(4,'login : ' || v_login.vals(1) ); htp.header(4,'password : '|| v_password.vals(1) ); ELSE owa_util.http_header_close; -- надо бы спросить пароль htp.htmlOpen; htp.header(3,' Проверка полномочий' ); htp.formOpen( './login', 'POST'); htp.print( ' Username : ' ); htp.formText('log',20,30);htp.br; htp.print( 'Password : ' ); htp.formText('pwd',20,30);htp.br; htp.br; htp.formSubmit; htp.formReset(' Отмена '); htp.formClose; END IF; htp.header(3,' Принято через поля' ); htp.header(4,'login : ' || log ); htp.header(4,'password : '|| pwd ); htp.htmlClose; exception when others then htp.header(2,'Произошла ошибка !!!'); -- ||to_char(sqlcode)); htp.p(to_char(sqlcode)||' - '||sqlerrm); htp.br; htp.header(4,'Выход ...'); end; mikeom@trecom.tomsk.su

Тема :

Перемещение файлов с помощью OWA replacement cartrige

Вопрос :

Кто-нибудь пользовался сабжем? Тем который создал Kyte? Если да, то напишите, как он? Действительно является полноценным заменителем или так, хроменький весь? Желательно слышать мнение относительно его работы на 3 и 4 Вебе. А то надо несколько advanced features сваять, а другого способа не вижу.

Ответ :

Victor Kolesov" (victor@prg.akhz.com) Я использую пока только upload file и download file из его картриджа . Работает без сбоев. Во время установки и настройки смотрел исходные файлы картриджа (написан на С с использованием OCI функций ) красиво написан :-) . Все ключевые моменты работы пишутся в Log file . Я доволен . Только при отсутствии запросов к нему через 2-3 минуты процесс заканчивает свою работу (status Down). Не подскажет ли кто, как увеличить время нахождения этого картриджа (или другого С - application ) в постоянной готовности (состоянии Up ) . Конфигурация сервера : Win NT 4.0+Oracle7.3+OAS4.07 .

Вопрос :

з.ы. кстати, может кто знает или видел где: можно ли стандартными средствами через OAS делать хитрый логин следующей хитрости: при аутентификации перед именем пользователя в зависимости от DAD'a прописывается какой-либо префикс. Мне кажется что где-то видел, но либо привиделось либо не помню где. В доках не нашел. :(((

Ответ :


Новости | FAQ | Ссылки | Темы | Утилиты | Documentation | Семинары