2014-03-28 46 views
0

我正在研究允许用户上传图像文件的应用程序。我遵循将文件保存在目录中并将其名称保存在数据库中以供检索的方法。在Linux主机服务器(Java)上传图像路径

inputStream = file.getInputStream(); 
BufferedImage imBuff = ImageIO.read(inputStream); 
imBuff = Scalr.resize(imBuff, 200); 
File dir = new File("/opt/uploads/contactImages"); 
if(!dir.exists()){ 
    dir.mkdirs(); 
} 
ImageIO.write(imBuff, "png", new File("/opt/uploads/contactImages")); 

因此,使用上面的代码我的文件被上传到opt/uploads/contactImages文件夹中,并且在我的本地环境中工作正常。

但在生产中,我在openshift服务器上主持过我的战争。图像没有在那里创建,可能是因为我没有root权限来创建这样的目录?应该怎样解决这个问题?

回答

0

据我所知,我们都在openshift上使用App/Web服务器的实例,我们在这里没有独立的服务器,所以我们不会对服务器有写权限,而是尝试上传BLOB对象到数据库中,很容易

+0

是的,我明白了文件,但我们在,至少有权利上传我们的战争,那么我们肯定有上传其他文件的权利,我不愿意去通过BLOB方式。 – Tushar

+0

我不知道这一点,我们可以上传我们的战争,但我们不能在服务器上创建任何目录。我会研究这一点,并会回复你。 – Pulkit

+1

tushar你尝试过吗? https://www.openshift.com/forums/openshift/how-to-upload-and-serve-files-using-java-servlets-on-openshift – Pulkit

相关问题