如何获取上传文件的URL并将其用作属性值?

时间:2013-06-04 15:39:14

标签: jsf oracle-adf jdeveloper

我正在使用JDeveloper 11.1.2.3.0。我想获取文件的URL并将其用作另一个属性的输入。我使用inputFile但我无法直接从那里获取URL。

我是否必须构建一个managedBean?

任何人都可以帮我解释如何做到这一点吗?

1 个答案:

答案 0 :(得分:0)

  

如何获取上传文件的网址

这不是它的工作原理。

当用户上传文件时,您作为服务器将获得文件内容作为最重要的信息。您将不会获得该文件的URL,这没有意义(客户端不运行Web服务器等)。最多您将获得文件名作为附加信息,并且在具有安全性错误的古老浏览器中(例如IE< 10)也是完整的客户端磁盘文件系统路径but this information is completely worthless to you。您最终会得到文件内容和文件名。

检索文件内容和文件名you are supposed to save it yourself in the server's disk file system或SQL数据库后,取决于您所追求的可搜索程度,可维护性和可移植性。如果您打算能够在客户端的另一个HTTP请求上重新提供此上载文件,那么您还应该确保特定文件随后由完整的URL提供。

There are several ways to make a saved uploaded file available by an URL afterwardsYou could create a virtual host on the folder where you're storing the uploaded filesOr if creating a virtual host is not possible, or when you intend to have a bit more control over serving the file, then you could create a custom servletNote that you should absolutely not be storing uploaded images in deploy folder with help of getRealPath()