2.2.6 Binary Data
Data that has no "natural" representation with printable characters
must, for inclusion in an XML file, still be represented in printable
characters. The simple technique for this consists in converting the
binary byte values to their hexadecimal representations. The XML Schema
datatype to use in this case is xsd:hexBinary
. A sample
schema declaration is shown below.
<xsd:complexType name="BinaryType">
<xsd:sequence>
<xsd:element name="data" type="xsd:hexBinary"/>
</xsd:sequence>
</xsd:complexType>
The Java class produced by JAXB contains a convenient pair of
getter and setter methods for accessing the instance variable
(called data
) that stores the binary data. Its type and
the type for passing the binary data is byte[]
.
All conversions are handled by JAXB.
public class BinaryType {
protected byte[] data;
public byte[] getData() {
return data;
}
public void setData(byte[] value) {
this.data = ((byte[]) value);
}
}