Java Jersey:FormDataContentDisposition的文件上载为null
我正在尝试使用Jersey实现文件上载,因此我遵循以下示例: 它与HTML页面配合得很好。现在,我将其应用于我的应用程序,下面是代码:Java Jersey:FormDataContentDisposition的文件上载为null,java,rest,jersey,Java,Rest,Jersey,我正在尝试使用Jersey实现文件上载,因此我遵循以下示例: 它与HTML页面配合得很好。现在,我将其应用于我的应用程序,下面是代码: public Response uploadFile( @FormDataParam("file") InputStream uploadedInputStream, @FormDataParam("file") FormDataContentDisposition fileDetail) throws IOException {
public Response uploadFile(
@FormDataParam("file") InputStream uploadedInputStream,
@FormDataParam("file") FormDataContentDisposition fileDetail)
throws IOException {
Response.Status respStatus = Response.Status.OK;
if (fileDetail == null) {
respStatus = Response.Status.INTERNAL_SERVER_ERROR;
} else {
try {
initPath();
if (fileDetail.getSize() > OntoWebStudioUtil
.getUploadFileLimit()) {
respStatus = Response.Status.NOT_ACCEPTABLE;
return Response.status(respStatus).build();
}
writeToFile(uploadedInputStream, tempDirectory);
} catch (Exception e) {
respStatus = Response.Status.INTERNAL_SERVER_ERROR;
e.printStackTrace();
}
}
return Response.status(respStatus).build();
}
但在debug视图中,一旦我上传了图片并按下send按钮,然后点击gethere,uploadedInputStream和fileDetail都是空的。所以我什么也做不了。。。
我是一个Servlet初学者,然后休息,所以请宽容
多谢各位 我找到了它不起作用的原因: 这是因为在FormDataParameter(“myForm”)后面选择的名称必须与在HTML表单中选择的名称相同(name=“myForm”) 所以 形式必须是这样的
<form action=".../rest/fileupload" method="post" enctype="multipart/form-data">
<p>
Select a file : <input type="file" name="myForm"/>
</p>
<input type="submit" value="Upload It" />
</form>
选择一个文件:
希望它能帮助像我这样的初学者:)请你也分享一下。。。html页面的一部分?你好,我找到了它不工作的原因。事实上,这是因为我的名字表单与FormDataParam(文件)不同。谢谢你的回答!很高兴听到你找到了。请您也发布您的解决方案作为答案,以帮助其他用户解决同样的问题?
<form action=".../rest/fileupload" method="post" enctype="multipart/form-data">
<p>
Select a file : <input type="file" name="myForm"/>
</p>
<input type="submit" value="Upload It" />
</form>