2017-04-05 1 views
0

내가 저지를 사용하여 RESTful 서비스를 구현하고 있고 포스트 방법에 나는InboundJaxrsResponse가 오류입니까?

InboundJaxrsResponse 얻고있다 {컨텍스트 = ClientResponse {METHOD = POST, URI = https://dev-osb.int.mgc.com/ESignature/Docusign/DEV1/DocuSignRestSendDocuments, 상태 = 200, 이유 = OK}}

확실히 올바른 응답을 얻지 못하고 있으며, 이것이 원인이라면 혼란 스럽습니다. 아래는 post 메소드입니다.

WebTarget webTarget = client.createResource(ESignatureSpringUtil.getMessage(KeyConstants.ALSB_DOCUSIGN_ADDRESS) 
       + ESignatureSpringUtil.getMessage(KeyConstants.REST_SEND_DOCUMENTS_ADDRESS)); 

     Invocation.Builder builder = webTarget 
       .request(MediaType.APPLICATION_XML_TYPE) 
       .header(KeyConstants.REST_URI_APPENDERS, docSb) 
       .header(DocusignRESTContants.CONTENT_TYPE, DocusignRESTContants.MULTIPART_FORM_DATA) 
       .header(DocusignRESTContants.X_DOCUSIGN_AUTHENTICATION, getDocusignAuthHeader(cu)); 

     Response response = builder.post(Entity.entity(multiPart.toString().getBytes(), MediaType.APPLICATION_OCTET_STREAM), Response.class); 

내가 잘못하고 있으면 알려주십시오.

+0

죄송합니다, 이해가 가지 않았습니다. 당신이 타격을 한 후에 당신이 기대하지 않는 형식의 응답을 얻었습니까? 그렇다면 어떤 형식으로 원하는가? –

+0

그래서 두 가지 문제가 있다고 가정합니다. 하나는 다중 정렬을 바이트로 전달해야한다는 사실에 대해 이미 확신하지 못하고 있습니다. 왜냐하면 이미 다중 정렬을 정렬하고 있기 때문입니다. 그래서 일반 자바 객체로 multipart를 전달하면 MessageBodyWriter Exception을 얻습니다. 하지만 멀티 파트를 바이트 스트림으로 전달하면 200 개의 상태 코드가있는 InboundJaxrsResponse가되지만 응답하지 않는다고 생각하는 이메일은받지 못합니다. – Mike

+0

오류가 아닙니다. 응답의 하위 클래스입니다. 왜 그게 잘못이라고 생각하니? –

답변

0

마지막으로 대답을 얻었습니다. 따라서 멀티 패스를 바이트 스트림으로 전달하는 대신 일반 자바 객체로 전달했으며 multipart.setMediaType ("application/whatever")과 같은 멀티 파트에서 미디어 유형을 설정해야했습니다. 그런 다음 엔티티 메소드에서 멀티 파트에서 미디어 유형을 가져옵니다. 그래서 지금 그것은 이메일을 생성 중입니다. **