<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Is there a Workaround in DM/DAM 5.5 to read EXIF/IPTC metadata on TIF files? in Nuxeo Forum</title>
    <link>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316036#M3037</link>
    <description>&lt;P&gt;When I import JPG files with EXIF information it is read properly and reflected in the picture metadata in Nuxeo. However, when I try the same with TIF images I get an error (see dump below). I did notice that between 5.4.2 and 5.5 the following have been dropped ... JAI-Adapter-0.9.5.jar, mlib_jai-1.1.2_01.jar, and possibly others(?). Even if I fix the PlanarImage error by adding required jars I still get the same error in ReadOp.createImageReader. I have, however, confirmed that the stream is readable (at least using FileUtils) by overriding the PictureChangedListener and reading the stream into a Byte array.&lt;/P&gt;
&lt;P&gt;I haven't found the 0.9.5 source (although newer sources are available on bitbucket).&lt;/P&gt;
&lt;P&gt;Is there any known workaround for this? Are their libraries missing in the 5.5 stream?&lt;/P&gt;
&lt;P&gt;Thanks, Bruce.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;2012-03-02 11:11:15,496 WARN  [it.tidalwave.image.java2d.ImplementationFactoryJ2D] JAI not available: java.lang.ClassNotFoundException: javax.media.jai.PlanarImage
2012-03-02 11:11:15,509 INFO  [it.tidalwave.image.op.ReadOp] readMetadata(java.io.BufferedInputStream@5c8c05, 0)
2012-03-02 11:11:16,128 ERROR [org.nuxeo.ecm.platform.picture.core.mistral.MistralMetadataUtils] Failed to get EXIF metadata
java.io.IOException: Cannot read from the inputstream
	at it.tidalwave.image.op.ReadOp.createImageReader(ReadOp.java:470)
	at it.tidalwave.image.op.ReadOp.access$000(ReadOp.java:57)
	at it.tidalwave.image.op.ReadOp$Reader.run(ReadOp.java:113)
	at it.tidalwave.image.op.ReadOp$Reader.read(ReadOp.java:89)
	at it.tidalwave.image.op.ReadOp$Type$3.read(ReadOp.java:206)
	at it.tidalwave.image.op.ReadOp.execute(ReadOp.java:332)
	at it.tidalwave.image.EditableImage.create(EditableImage.java:239)
	at org.nuxeo.ecm.platform.picture.core.mistral.MistralMetadataUtils.getImageMetadata(MistralMetadataUtils.java:76)
	at org.nuxeo.ecm.platform.picture.ImagingComponent.getImageMetadata(ImagingComponent.java:106)
	at org.nuxeo.ecm.platform.picture.api.adapters.AbstractPictureAdapter.setMetadata(AbstractPictureAdapter.java:213)
	at org.nuxeo.ecm.platform.picture.api.adapters.DefaultPictureAdapter.createPicture(DefaultPictureAdapter.java:84)
	at org.nuxeo.ecm.platform.picture.api.adapters.PictureBlobHolder.setBlob(PictureBlobHolder.java:82)
	at org.nuxeo.ecm.platform.picture.listener.PictureChangedListener.handleEvent(PictureChangedListener.java:52)
	at org.nuxeo.ecm.core.event.impl.EventServiceImpl.fireEvent(EventServiceImpl.java:195)
	at org.nuxeo.ecm.core.api.AbstractSession.fireEvent(AbstractSession.java:343)
	at org.nuxeo.ecm.core.api.AbstractSession.notifyEvent(AbstractSession.java:395)
	at org.nuxeo.ecm.core.api.AbstractSession.createDocument(AbstractSession.java:806)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.nuxeo.ecm.core.api.TransactionalCoreSessionWrapper.invoke(TransactionalCoreSessionWrapper.java:129)
	at $Proxy24.createDocument(Unknown Source)
	at org.nuxeo.ecm.platform.picture.extension.ImagePlugin.create(ImagePlugin.java:88)
	at org.nuxeo.ecm.platform.filemanager.service.FileManagerService.createDocumentFromBlob(FileManagerService.java:249)
	at org.nuxeo.ecm.platform.importer.factories.FileManagerDocumentModelFactory.createLeafNode(FileManagerDocumentModelFactory.java:50)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.doCreateLeafNode(GenericThreadedImportTask.java:215)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.recursiveCreateDocumentFromNode(GenericThreadedImportTask.java:330)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.recursiveCreateDocumentFromNode(GenericThreadedImportTask.java:325)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.run(GenericThreadedImportTask.java:371)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)
&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Fri, 02 Mar 2012 17:29:39 GMT</pubDate>
    <dc:creator>bruce_Grant</dc:creator>
    <dc:date>2012-03-02T17:29:39Z</dc:date>
    <item>
      <title>Is there a Workaround in DM/DAM 5.5 to read EXIF/IPTC metadata on TIF files?</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316036#M3037</link>
      <description>&lt;P&gt;When I import JPG files with EXIF information it is read properly and reflected in the picture metadata in Nuxeo. However, when I try the same with TIF images I get an error (see dump below). I did notice that between 5.4.2 and 5.5 the following have been dropped ... JAI-Adapter-0.9.5.jar, mlib_jai-1.1.2_01.jar, and possibly others(?). Even if I fix the PlanarImage error by adding required jars I still get the same error in ReadOp.createImageReader. I have, however, confirmed that the stream is readable (at least using FileUtils) by overriding the PictureChangedListener and reading the stream into a Byte array.&lt;/P&gt;
&lt;P&gt;I haven't found the 0.9.5 source (although newer sources are available on bitbucket).&lt;/P&gt;
&lt;P&gt;Is there any known workaround for this? Are their libraries missing in the 5.5 stream?&lt;/P&gt;
&lt;P&gt;Thanks, Bruce.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;2012-03-02 11:11:15,496 WARN  [it.tidalwave.image.java2d.ImplementationFactoryJ2D] JAI not available: java.lang.ClassNotFoundException: javax.media.jai.PlanarImage
2012-03-02 11:11:15,509 INFO  [it.tidalwave.image.op.ReadOp] readMetadata(java.io.BufferedInputStream@5c8c05, 0)
2012-03-02 11:11:16,128 ERROR [org.nuxeo.ecm.platform.picture.core.mistral.MistralMetadataUtils] Failed to get EXIF metadata
java.io.IOException: Cannot read from the inputstream
	at it.tidalwave.image.op.ReadOp.createImageReader(ReadOp.java:470)
	at it.tidalwave.image.op.ReadOp.access$000(ReadOp.java:57)
	at it.tidalwave.image.op.ReadOp$Reader.run(ReadOp.java:113)
	at it.tidalwave.image.op.ReadOp$Reader.read(ReadOp.java:89)
	at it.tidalwave.image.op.ReadOp$Type$3.read(ReadOp.java:206)
	at it.tidalwave.image.op.ReadOp.execute(ReadOp.java:332)
	at it.tidalwave.image.EditableImage.create(EditableImage.java:239)
	at org.nuxeo.ecm.platform.picture.core.mistral.MistralMetadataUtils.getImageMetadata(MistralMetadataUtils.java:76)
	at org.nuxeo.ecm.platform.picture.ImagingComponent.getImageMetadata(ImagingComponent.java:106)
	at org.nuxeo.ecm.platform.picture.api.adapters.AbstractPictureAdapter.setMetadata(AbstractPictureAdapter.java:213)
	at org.nuxeo.ecm.platform.picture.api.adapters.DefaultPictureAdapter.createPicture(DefaultPictureAdapter.java:84)
	at org.nuxeo.ecm.platform.picture.api.adapters.PictureBlobHolder.setBlob(PictureBlobHolder.java:82)
	at org.nuxeo.ecm.platform.picture.listener.PictureChangedListener.handleEvent(PictureChangedListener.java:52)
	at org.nuxeo.ecm.core.event.impl.EventServiceImpl.fireEvent(EventServiceImpl.java:195)
	at org.nuxeo.ecm.core.api.AbstractSession.fireEvent(AbstractSession.java:343)
	at org.nuxeo.ecm.core.api.AbstractSession.notifyEvent(AbstractSession.java:395)
	at org.nuxeo.ecm.core.api.AbstractSession.createDocument(AbstractSession.java:806)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.nuxeo.ecm.core.api.TransactionalCoreSessionWrapper.invoke(TransactionalCoreSessionWrapper.java:129)
	at $Proxy24.createDocument(Unknown Source)
	at org.nuxeo.ecm.platform.picture.extension.ImagePlugin.create(ImagePlugin.java:88)
	at org.nuxeo.ecm.platform.filemanager.service.FileManagerService.createDocumentFromBlob(FileManagerService.java:249)
	at org.nuxeo.ecm.platform.importer.factories.FileManagerDocumentModelFactory.createLeafNode(FileManagerDocumentModelFactory.java:50)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.doCreateLeafNode(GenericThreadedImportTask.java:215)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.recursiveCreateDocumentFromNode(GenericThreadedImportTask.java:330)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.recursiveCreateDocumentFromNode(GenericThreadedImportTask.java:325)
	at org.nuxeo.ecm.platform.importer.base.GenericThreadedImportTask.run(GenericThreadedImportTask.java:371)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 02 Mar 2012 17:29:39 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316036#M3037</guid>
      <dc:creator>bruce_Grant</dc:creator>
      <dc:date>2012-03-02T17:29:39Z</dc:date>
    </item>
    <item>
      <title>Re: Is there a Workaround in DM/DAM 5.5 to read EXIF/IPTC metadata on TIF files?</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316037#M3038</link>
      <description>&lt;P&gt;According to http&lt;/P&gt;</description>
      <pubDate>Mon, 05 Mar 2012 12:09:44 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316037#M3038</guid>
      <dc:creator>Thomas_Roger</dc:creator>
      <dc:date>2012-03-05T12:09:44Z</dc:date>
    </item>
    <item>
      <title>Re: Is there a Workaround in DM/DAM 5.5 to read EXIF/IPTC metadata on TIF files?</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316038#M3039</link>
      <description>&lt;P&gt;Using the newer version of the metadata-extractor (2.5.0-RC3) does solve this problem and opens up a much broader set of metadata for extraction. I started down the path of writing a wrapper for 2.5.0-RC3 to maintain backward compatibility with Nuxeo 5.5, but there are a fair number of connection points and it was easier just to adapt the listener and the newer extractor to purpose. Of course it would be better if 2.5.0-RC3 were wrapped into the core product!&lt;/P&gt;
&lt;P&gt;&lt;A href="http://concena.com/blogged-down/-/blogs/extracting-exif-iptc-xmp-and-more-with-drew-noakes-metadata-extractor-2-5-0-rc3"&gt;More details&lt;/A&gt; on what I did and a code snippet.&lt;/P&gt;</description>
      <pubDate>Mon, 05 Mar 2012 14:08:43 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316038#M3039</guid>
      <dc:creator>bruce_Grant</dc:creator>
      <dc:date>2012-03-05T14:08:43Z</dc:date>
    </item>
    <item>
      <title>Re: Is there a Workaround in DM/DAM 5.5 to read EXIF/IPTC metadata on TIF files?</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316039#M3040</link>
      <description>&lt;P&gt;Thanks, I'll try to have a look to integrate it into Nuxeo.&lt;/P&gt;</description>
      <pubDate>Mon, 05 Mar 2012 14:53:50 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/is-there-a-workaround-in-dm-dam-5-5-to-read-exif-iptc-metadata/m-p/316039#M3040</guid>
      <dc:creator>Thomas_Roger</dc:creator>
      <dc:date>2012-03-05T14:53:50Z</dc:date>
    </item>
  </channel>
</rss>

