KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to upload a file and other form data using multipart/form-data client with Jersey. I'm uploading to a REST web service also using Jersey. Here is the server code: @POST @Consumes(MediaType.MULTIPART_FORM_DATA) @Produces(MediaType.APPLICATION_JSON) public String create(@FormDataParam("file") InputStream file, @FormDataParam("file") FormDataContentDisposition fileInfo, @FormDataParam("name") String name, @FormDataParam("description") String description) { Ingredient ingredient = new Ingredient(); ingredient.setName(name); ingredient.setDescription(description); ingredient.setImageName(fileInfo.getFileName()); ingredient.setImagePath(context.getRealPath("/resources/uploads/")); // TODO save the file. try { JSONObject json = new JSONObject(); try { ingredientService.create(ingredient); } catch (final InvalidParameterException ex) { logger.log(Level.INFO, ex.getMessage()); json.put("result", false); json.put("error", ex.getMessage()); return json.toString(); } catch (final GoodDrinksException ex) { logger.log(Level.WARNING, null, ex); json.put("result", false); json.put("error", ex.getMessage()); return json.toString(); } json.put("ingredient", JsonUtil.ingredientToJSON(ingredient)); return json.put("result", true).toString(); } catch (JSONException ex) { logger.log(Level.SEVERE, null, ex); return "{\"result\",false}"; } } I've tested the server code using a basic html form on my desktop and it works fine. The problem seems to be in the client. Here is the relevant client code. ClientConfig config = new DefaultClientConfig(); client = Client.create(config); client.addFilter(new LoggingFilter()); webResource = client.resource("http://localhost:8080/webapp/resources").pa
Tags (comma-separated)
Save Edits
Cancel