Hi Daniel, On Wed, May 4, 2011 at 12:33 AM, Daniel Fisher <[email protected]> wrote: > Hello, > I'm doing some testing with 1.0.0-M3 and I'm having trouble reading > binary attributes. > Specifically for jpegPhoto in OpenLDAP 2.4.23: > > # jpegPhoto > # Used to store one or more images of a person using the JPEG File > # Interchange Format [JFIF]. > attributetype ( 0.9.2342.19200300.100.1.60 > NAME 'jpegPhoto' > DESC 'RFC2798: a JPEG image' > SYNTAX 1.3.6.1.4.1.1466.115.121.1.28 ) > > the byte[] I get from Attribute#get()#getBytes() is about twice as big > as I expect. Attribute#isHumanReadable() also returns true. Which > makes me think the value has been encoded. > Code snippet of what I'm doing: > while (cursor.next()) { > SearchResultEntry result = (SearchResultEntry) cursor.get(); > Entry e = result.getEntry(); > Attribute photo = e.get("jpegPhoto"); > if (photo != null) { > byte[] bytes = photo.get().getBytes(); > FileOutputStream fos = new FileOutputStream("photo.jpg"); > fos.write(bytes); > fos.close(); > } > } > > ldapsearch returns the value I expect. Is there some special syntax > for binary values I'm missing? Thanks > this is due to the fact that by default the client connection is not schema aware, to make it schema aware call loadSchema() method of the connection before performing any operations. Let us know if you still have any issues. Thank you for testing. > --Daniel Fisher >
-- Kiran Ayyagari
