I have written a restful web service in spring boot which receives the file.
@RequestMapping(value = "/upload", method = RequestMethod.POST)
@ResponseBody
public void uploadFile(@RequestParam("file") MultipartFile uploadfile) {
System.out.println("filename: " + uploadfile.getName());
}
How can we upload the file from client side java code to web service. Instead of AJAX call or HTML page form multipart request?
The code below call the web service with JSON object. Like this I want to receive the file in above written web service.
void clientRequest(String server_url, JSONObject fileObj){
try {
URL url = new URL(server_url);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/json");
OutputStream os = conn.getOutputStream();
os.write(fileObj.toString().getBytes());
os.flush();
BufferedReader br = new BufferedReader(new InputStreamReader(
(conn.getInputStream())));
String output;
System.out.println("Output from Server .... \n");
while ((output = br.readLine()) != null) {
logger.info("output :: " + output);
}
conn.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}