| = Attachments Component |
| :doctitle: Attachments |
| :shortname: attachments |
| :artifactid: camel-attachments |
| :description: Support for attachments on Camel messages |
| :since: 3.0 |
| :supportlevel: Stable |
| :tabs-sync-option: |
| |
| *Since Camel {since}* |
| |
| The Attachments component provides the `javax.attachments` API support for Apache Camel. |
| A few Camel component uses attachments such as mail and web-service components. |
| The Attachments component is included automatically when using these components. |
| |
| The Attachments support is on Camel `Message` level, for example to get |
| the `javax.activation.DataHandler` instance of the attachment, you can do as shown below: |
| |
| [source,java] |
| ---- |
| AttachmentMessage attMsg = exchange.getIn(AttachmentMessage.class); |
| Attachment attachment = attMsg.getAttachmentObject("myAttachment"); |
| DataHandler dh = attachment.getDataHandler(); |
| ---- |
| |
| And if you want to add an attachment, to a Camel `Message` you can do as shown: |
| [source,java] |
| ---- |
| AttachmentMessage attMsg = exchange.getIn(AttachmentMessage.class); |
| attMsg.addAttachment("message1.xml", new DataHandler(new CamelFileDataSource(new File("myMessage1.xml")))); |
| ---- |