Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从JavaEE应用程序外部化PDF?_Java_Html_Jakarta Ee_Web_Weblogic - Fatal编程技术网

如何从JavaEE应用程序外部化PDF?

如何从JavaEE应用程序外部化PDF?,java,html,jakarta-ee,web,weblogic,Java,Html,Jakarta Ee,Web,Weblogic,我有一个JavaEE应用程序,在WebLogic10.3.5和Java6下运行。 我曾经有一个pdf帮助文件,嵌入在我的war文件中,但我需要从那里提取它,并将其放在一个外部目录中(它可以在我的同一个WebLogic域目录中) 我试图把它放在我的WebLogic域中,然后放到中,但似乎浏览器有限制,出于安全原因,不允许下载带有a href或javascript的本地文件 这只适用于保存在我的计算机上的静态HTML文件,但如果HTML页面部署在服务器上,这似乎是不可能的 知道如何从war文件中具体

我有一个JavaEE应用程序,在WebLogic10.3.5和Java6下运行。 我曾经有一个pdf帮助文件,嵌入在我的war文件中,但我需要从那里提取它,并将其放在一个外部目录中(它可以在我的同一个WebLogic域目录中)

我试图把它放在我的WebLogic域中,然后放到中,但似乎浏览器有限制,出于安全原因,不允许下载带有a href或javascript的本地文件

这只适用于保存在我的计算机上的静态HTML文件,但如果HTML页面部署在服务器上,这似乎是不可能的


知道如何从war文件中具体化help.pdf文件吗?

您需要将其放在web上下文的根目录下,与HTML页面完全相同的位置。您的web服务器将能够在那里找到它。

尽管一些应用程序服务器允许Java EE应用程序引用web容器外的文件,但实际上,您的web应用程序不应该了解web容器外的任何信息,正如您所提到的,这确实是一个巨大的安全隐患

根据您试图使用此PDF文件完成的操作,如果您只想在web上公开此文件,请按照@duffmo所说的操作,它将正常工作。如果您希望灵活地修改PDF文件,而不必重新创建WAR文件,您可能需要考虑在某些HTTP Web服务器(ApACE2、IIS等)中托管此PDF文件,现在您可以从Web应用程序中引用该链接。p> @limc是对的

您应该将这个静态文件放在Weblogic之外,作为Apache web服务器上的一个文件

然而,在Weblogic中有一个虚拟目录映射功能,它允许您在Weblogic域之外声明一个文件夹作为任何静态内容的内容存储

此条目位于WEB-INF/weblogic.xml中

<virtual-directory-mapping>      
<local-path>c:/usr/mypdfs</local-path>      
<url-pattern>/pdf/*</url-pattern>      
</virtual-directory-mapping>

c:/usr/mypdfs
/pdf/*

谢谢,但不幸的是,这确实是静态的;更新帮助文件时,我需要重新启动域。但这总比现在什么都没有好。