JPG 파일과 JSON 직렬화 된 Java 객체를 업로드하려고합니다. 서버에서 Apache CXF를 사용하고 있는데, 클라이언트에서 나는 rest-assured으로 통합 테스트를하고 있습니다. 내가 처음 멀티 라인에서와 같이 파일에서 JSON 부분을 읽을 때JAX-RS with CXF/rest-assured : 다중 경로 파일 업로드 처리
given().
multiPart("document", new File("./data/json.txt"), "application/json").
multiPart("image", new File("./data/image.txt"), "image/jpeg").
expect().
statusCode(Response.Status.CREATED.getStatusCode()).
when().
post("/document");
모든 것이 잘 작동 :
@POST
@Path("/document")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response storeTravelDocument(
@Context UriInfo uriInfo,
@Multipart(value = "document") JsonBean bean,
@Multipart(value = "image") InputStream pictureStream)
throws IOException
{}
내 클라이언트 코드는 다음과 같습니다처럼
내 서버 코드 보인다. 그러나 json 인스턴스를 직렬화하려면 문제가 발생합니다. 나는 많은 변종을 시도했지만 아무도 효과가 없었다.
내가이 변형이 일을해야한다고 생각 : 클라이언트JsonBean json = new JsonBean();
json.setVal1("Value 1");
json.setVal2("Value 2");
given().
contentType("application/json").
formParam("document", json).
multiPart("image", new File("./data/image.txt"), "image/jpeg").
...
에 서버
public Response storeTravelDocument(
@Context UriInfo uriInfo,
@FormParam(value = "document") JsonBean bean,
@Multipart(value = "image") InputStream pictureStream)
에 있지만. 아무도 그것이 어떻게되어야하는지 말해 줄 수 있습니까?
도움 주셔서 감사합니다. 이전에 시도했는데 (JAXB가 아닌, 작동하지 않음) 멀티 파트와 본문을 함께 사용할 수 없습니다. 작동하지 않는 이유는 http://code.google.com/p/rest-assured/issues/ 일 수 있습니다. detail? id = 167 우리는 다음 버전의 안심할 것입니다. – ChrLipp
불운 한 다음 :(미안하지만 도움이되지 못합니다.) –
아무튼 고맙습니다! – ChrLipp