Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.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
Java 如何获取公共webcontent资源的输入流?_Java_Jsf_Primefaces - Fatal编程技术网

Java 如何获取公共webcontent资源的输入流?

Java 如何获取公共webcontent资源的输入流?,java,jsf,primefaces,Java,Jsf,Primefaces,我在战争中收集了一组图像,我用在中描述它们。图像位于/resources/icons文件夹中。我希望能够选择一个图像并在提交时将该图像的副本保存到磁盘 如何做到这一点?如何获取此图像的引用(InputStream或其他内容?给定此文件夹结构 YourProject |-- src | `-- com | `-- example | `-- BackingBean.java |-- WebContent | |-- META-INF

我在战争中收集了一组图像,我用
中描述它们。图像位于
/resources/icons
文件夹中。我希望能够选择一个图像并在提交时将该图像的副本保存到磁盘


如何做到这一点?如何获取此图像的引用(
InputStream
或其他内容?

给定此文件夹结构

YourProject |-- src | `-- com | `-- example | `-- BackingBean.java |-- WebContent | |-- META-INF | |-- WEB-INF | |-- resources | | `-- icons | | `-- foo.png | `-- foo.xhtml : 或者通过其中获取
/resources
,从中获取
/resources
-相对路径:

ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
InputStream input = externalContext.getResourceAsStream("/resources/icons/foo.png");
// ...
ResourceHandler resourceHandler = FacesContext.getCurrentInstance().getApplication().getResourceHandler();
InputStream input = resourceHandler.createResource("icons/foo.png").getInputStream();
// ...
至于选择图像并传递其路径,只需执行如下操作:


另见:

不,实际上它没有加载和保存图像。这些图像是随webapp打包的图标。用户可以选择一个图标,该图标需要保存到文件系统上的文件夹中。当然,我可以在两个webapp中复制图像并将其保存在文件夹中,但我希望将图像复制并保存到磁盘。