oracle - 链接到文件服务器 ApEx
问题描述
请问你能帮帮我吗?
在网上看了一下,发现可以把文件放到 Apex 镜像文件夹中,然后从那里调用,用下面这句话:
<a href="#IMAGE_PREFIX#"file.pdf"> Download pdf </a>
或者
<a href="/i/file.pdf"> Download pdf </a>
我需要放入该文件夹的文件数量约为 1 TB,因此我认为将它们放入该文件夹不是最佳选择,此外还可以删除 Oracle 文件的更新。
我发现以下内容:不建议将您自己的文件存储在 Apex 图像文件夹下,因为它们可能在 Apex 升级期间被覆盖。相反,您可以在指向不同位置的应用服务器上定义自己的逻辑目录,例如 /myfiles/,然后像这样引用它:
<a href="/myfiles/file.pdf"> Download pdf </a>
创建目录如下
CREATE OR REPLACE DIRECTORY myfiles AS 'C:\test';
如何在应用服务器中定义逻辑目录?我正在使用玻璃鱼。
解决方案
遵循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 这样的 Web 服务器来提供静态文件。
- 已弃用对 Glassfish 的 ORDS 支持。
推荐阅读
- swift - Swift Data.subdata fails with EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
- spring - 重命名 JSESSIONID
- java - 根据其值在 JPA 复杂对象中搜索嵌套对象
- python - 如何在给定轴上迭代 numpy 数组?
- c++ - 这是正确的行为吗?
- python - 更“Pythonic方式”的高斯分布
- spring-integration - 如何通过已防止重复设置的入站取消标记重复以重新启动流
- html - 如何判断 HTML 元素是否被虚拟 DOM 跟踪
- javascript - $$eval 返回未定义。在 pupeteer 中
- javascript - 在Vue路由器中的两个组件之间传递道具