1

嗨,在我的应用程序中,我有一个包含图像上传功能的表单,并且在我的控制器中,我一直在进行验证,例如

       File f = getUpload();
       if(f != null) {
               if (!getUploadContentType().matches("^image/.*png|image/.*gif|image/.*jpeg|image/.*bmp|image/.*tiff$") {
          return FAILED;
           }
      }

如果我上传图像并提交表单,我会得到 getUploadContentType() 类型为 image/jpeg 并且工作正常,如果我不上传图像并提交表单,我不会将文件“ f ”设为 null,如果我看到 getUploadContentType() iam 变得像application/octet-stream所以我不明白为什么即使 iam 没有上传图片 iam 也没有得到 null 在这里我的要求是如果我不上传图片则提交表单事件

这是我的表单代码(包含大量代码的最小化代码)

<s:form name="updateProfile" id="updateProfile" action="/user/updateMyProfile" method="post" enctype="multipart/form-data"> 
   <input name="upload" class="file" type="file" size="30" style="cursor: pointer;"/> 
<div class="pull-right m-b-lg m-r-xs"> 
  <button type="submit" class="btn btn-primary btn-search m-r-llg" >Save changes</button> <a href="#">cancel</a> 
</div> 
</s:form>
4

0 回答 0