java - 如何访问存储在服务器上的图像

标签 java jakarta-ee file-upload glassfish-3

我有一个托管在 jelastic.com 上的 Web 应用程序。我使用路径 /opt/glassfish3/temp 将图像上传到服务器的主目录。代码如下:

FileOutputStream fos = new FileOutputStream("/opt/glassfish3/temp/" + fileName);
            fos.write(uploadedFile.getContents());
            fos.flush();
            fos.close();

我正在使用图像标签来显示图像文件,但它给了我一个损坏的图像。 html代码如下:

<img src="/opt/glassfish3/temp/${sessionScope['userdet']['image']}" width="200px" ></img>

最佳答案

Jelastic 中的主文件夹主要用于存储目的。您最好将文件保存在网络服务器的文件夹中。 因此尝试替换您使用的代码:

FileOutputStream fos = new FileOutputStream("/opt/glassfish3/temp/" + fileName)

这个:

FileOutputStream fos = new FileOutputStream("/opt/glassfish3/glassfish/domains/ domain1/applications/{PUT_HERE_CONTEXT_NAME}/" + fileName);

然后修改html代码:

<img src="/opt/glassfish3/temp/${sessionScope['userdet']['image']}" width="200px" ></img> -> <img src="${sessionScope['userdet']['image']}" width="200px" ></img>

关于java - 如何访问存储在服务器上的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15070207/

相关文章:

java - 如何将项目(即从 github)导入到我的应用程序

java - 乘以 double 时索引超出范围

java - 在 TextView 中滚动单行、长文本

jsf - 使用 p :fileUpload 将完整的客户端文件路径发送到服务器端

javascript - superagent文件上传进度条

java - 为什么removeif()在集合流上不可用

jakarta-ee - 如何忽略/否决 CDI 生产者方法?

java - Tomcat 7.0.12 上 "Error deploying configuration descriptor"的原因

java - JNDI 名称——是否需要前缀 "jdbc/"?

javascript - Node.js:Multer 上传 promise ?