0

Spring API (MultiPartFile) を使用したファイル (画像、..) のアップロードは、ローカルホストで正常に動作します。

ただし、Linux Server にデプロイした後、コンソールには、Spring API がapplication/octet-stream., などのアップロードされたファイルの contentType を解釈することが示されます。

    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 
4

1 に答える 1

0

ファイル アップロード フォームには属性が必要です。属性enctype='multipart/form-data'がないと、ファイルの内容が Unicode 文字であるかのように処理され、画像ファイルが破損する可能性があります。

于 2013-09-22T11:16:57.893 に答える