使用Spring API(MultiPartFile)上传文件(图像,..)在localhost上正常工作。
然而,在Linux Server上部署之后,控制台显示Spring API解释了上传文件的contentType,例如application/octet-stream
。,
at java.io.FileOutputStream.<init>(FileOutputStream.java:209)
at java.io.FileOutputStream.<init>(FileOutputStream.java:160)
at org.apache.commons.fileupload.disk.DiskFileItem.write(DiskFileItem.java:449)
at com.myproject.utils.upload.FileUploadUtil.uploadFile(FileUploadUtil.java:64)
at com.myproject.utils.GenericFileUploadService$_upload_closure1.doCall(GenericFileUploadService.groovy:56)
at com.myproject.utils.GenericFileUploadService.upload(GenericFileUploadService.groovy:53)
at com.myproject.utils.GenericFileUploadService.upload(GenericFileUploadService.groovy:63)
... 7 more
org.springframework.web.multipart.commons.CommonsMultipartFile@1723bb6
content.AssetService File instance : org.springframework.web.multipart.commons.CommonsMultipartFile@1723bb6
println contentType =application/octet-stream
因此,当我使用ImagikImage将上传的文件转换为缩略图时,我收到以下错误:
`org.im4java.core.CommandException: org.im4java.core.CommandException: convert: unable to open image
/var/lib/tomcat7/myproject/ROOT/media/5/34: @ error/blob.c/OpenBlob/2587.
知道图像应该在以下路径中正常保存
/var/lib/tomcat7/myproject/ROOT/media/5/34.png
我发现了这种配置,我不知道它的效率:
grails.web.disable.multipart=true
答案 0 :(得分:0)
你的文件上传表单应该有一个属性enctype='multipart/form-data'
,如果没有,文件内容可以被视为unicode字符,你的图像文件会被破坏