Gopalan Suresh Raj's Web Cornucopia
An Oasis for the parched Enterprise Services Engineer/Developer

    SOA Tips-As much as possible, avoid using Base64 Encoded/Raw bytes in the message Body


    At times an XML could contain characters or declarations that are not supported by SOAP or the runtime - examples are, DTD declarations, binary data, locale specific character encoding, etc. In such cases you may have to use Base64 encoding of the raw bytes into the message payload. You have to be aware of the fact that base64 encoding will increase the amount of processing required before transmitting an XML document and again before parsing it at the receiving end. This means once a message is encoded, the recipient must decode the entire message in order to work with any part of it. You just have to also be aware of the fact that both parties need to know out of band what the data is for this approach to work. Another disadvantage is Base64 encoding will increase the message size significantly.

    Author Bibliography

    Gopalan Suresh Raj is a Senior Analyst, Software Architect, and Developer with expertise in multi-tiered systems development, enterprise service architectures, and distributed computing. He is also an active author, including contributions to Professional JMS Programming, Wrox Press, 2001, Enterprise Java Computing-Applications and Architecture, Cambridge University Press, 1999, and The Awesome Power of JavaBeans, Manning Publications Co., 1998. He has submitted papers at international fora, and his work has been published in numerous technical journals. Visit him at his Web Cornucopia© site ( or mail him at