我正在使用 Apache CXF 实现发送附件。即使我设置了dataHandler的名称,我也不知道为什么在服务器端没有reveiced。
Map<String, DataHandler> attachmentsMap = (Map<String, DataHandler>) context.get(MessageContext.OUTBOUND_MESSAGE_ATTACHMENTS);
ByteArrayDataSource bads = new ByteArrayDataSource(file, PDF_MIME_TYPE);
bads.setName(fileId);
DataHandler dh = new DataHandler(bads);
AttachmentPart attachmentPart = message.createAttachmentPart();
attachmentPart.setContent(new ByteArrayInputStream(file), PDF_MIME_TYPE);
attachmentPart.setContentId(fileId);
attachmentPart.setMimeHeader("fileName", "test");
message.addAttachmentPart(attachmentPart);
message.saveChanges();
attachmentsMap.put(fileId, dh);
正如您在我执行“bads.setName(fileId);”时所看到的那样 还设置了 dataHandler 的名称。在本地,如果我执行 dh.getName 我设置了名称。发送后就没有了