我試圖創建一個HTTP客戶端上傳文件下面這個例子:http://java.dzone.com/articles/file-upload-apache-httpclient上傳文件時出錯HTTP客戶端和基於REST的服務器
當我運行的文件上傳我的RESTful服務的應用程序,我得到:
HTTP錯誤500 訪問/文件/上傳問題。原因: 服務器ErrorCaused方式:顯示java.lang.NullPointerException 在com.nice.rest.UploadFileService.uploadFile(UploadFileService.java:33)
...
其中線33:
公共類UploadFileService {
@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadFile(
@FormDataParam("file") InputStream uploadedInputStream,
@FormDataParam("file") FormDataContentDisposition fileDetail) {
//line 33: String uploadedFileLocation = "/mnt/folder/"+ fileDetail.getFileName();
System.out.println("uploadedFileLocation : "+uploadedFileLocation);
// save it
writeToFile(uploadedInputStream, uploadedFileLocation);
String output = "200 OK<br />" + uploadedFileLocation;
return Response.status(200).entity(output).build();
}
出人意料的是,當我使用HTML表單上傳文件正常工作:
form action =「http://X.X.X.X:8080/file/upload」method =「post」enctype =「multipart/form-data」
怎麼了?
謝謝!!
負責上傳文件到您的REST服務代碼過去。它接近請求體中沒有'file'參數。 – ragnor