Java: извлечение содержимого из MTOM - PullRequest
0 голосов
/ 14 декабря 2018

Я пытаюсь извлечь содержимое MTOM, используя код ниже

Iterator i = msg.getAttachments();
while (i.hasNext())
{
  AttachmentPart att = (AttachmentPart)i.next();
  Object obj = att.getContent();
}

, где msg имеет тип SOAPMessage MIME, но rawContent имеет значение null и завершится сбоем при получении AttachmentPart

Есть ли другой способ получить контент MTOM?Получать границы и проходить через?

1 Ответ

0 голосов
/ 19 декабря 2018

Я получил код ниже

 MimeMultipart mp = new MimeMultipart(new ByteArrayDataSource(InputStream, "multipart/related"));
 int count = mp.getCount();
 for (int i = 0; i < count; i++) {
     BodyPart bodyPart = mp.getBodyPart(i);
     String content = new String(read(bodyPart));

     String partContentType =  bodyPart.getContentType();


  if(partContentType.toLowerCase().contains(SOAPConstants.SOAP_1_2_CONTENT_TYPE)) {

        //process SOAP 1.2
     }

    if(partContentType.toLowerCase().contains(SOAPConstants.SOAP_1_1_CONTENT_TYPE)) {

        //process SOAP 1.1
     }

     if(partContentType.toLowerCase().contains("application/octet-stream")) {

        // process binary part
     }
 }
...