Ссылка на файловый сервер ApEx - PullRequest
0 голосов
/ 07 сентября 2018

Не могли бы вы помочь мне, пожалуйста?

Посмотрев в Интернете, я обнаружил, что вы можете поместить файлы в папку изображений Apex и вызывать их оттуда со следующим предложением:

<a href="#IMAGE_PREFIX#"file.pdf"> Download pdf </a>

или

<a href="/i/file.pdf"> Download pdf </a>

Количество файлов, которые мне нужно поместить в эту папку, составляет приблизительно 1 ТБ, поэтому я думаю, что это не лучший вариант поместить их в эту папку, кроме того, можно удалить обновление файлов Oracle.

Я нашел следующее: Не рекомендуется хранить свои собственные файлы в папке изображений Apex, поскольку они могут быть перезаписаны при обновлении Apex. Вместо этого вы можете определить свой собственный логический каталог, например, / myfiles / на сервере приложений указывает на другое местоположение, а затем ссылается на него следующим образом:

<a href="/myfiles/file.pdf"> Download pdf </a>

Создайте каталог следующим образом

CREATE OR REPLACE DIRECTORY myfiles AS 'C:\test';

Как определить логический каталог на сервере приложений? Я использую Glassfish.

1 Ответ

0 голосов
/ 09 сентября 2018

Следуйте этому довольно старому, но актуальному руководству , написанному Colm Divilly.Вам понадобится только файл дескриптора Glassfish в вашем случае.Примерно так должно работать:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD GlassFish Application Server 3.0 Servlet 3.0//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_3_0-0.dtd">
<sun-web-app>
  <!-- This element specifies the context path the static resources are served from -->
  <context-root>/myfiles</context-root>
  <!-- This element specifies the location on disk where the static resources are located -->
  <property name="alternatedocroot_1" value="from=/* dir="c:/test"/>
</sun-web-app>

Проверьте путь Windows к ресурсам, возможно, его нужно исправить.Я редко работаю с Windows для развертываний.

Несколько других вещей:

  • Как правило, в описанном вами сценарии я бы поместил веб-сервер, такой как Apache HTTPD или Nginx, вподать статические файлы.
  • Поддержка ORDS для Glassfish устарела.
...