Why do PNG files fail to preview in Nuxeo DM?
I've installed a fresh Nuxeo 5.6 DM server and I'm having difficulty previewing imported PNG files.
My platform is Nuxeo 5.6 running on OpenIndiana oi_151a8 with Oracle JDK 7u21. Secure LDAP authentication has been configured, and I'm using an external PostgreSQL 9.1 64bit database. ImageMagick has been installed and image tiling for previewing large images appears to work fine. I've also performed a data import (VCS datastore and PostgreSQL dump) from a Nuxeo 5.6 VM.
What I'm seeing is as follows. First, I drag and drop a PNG file from the local client into a Nuxeo DM workspace. Then when clicking on the PNG to view its properties (e.g. by clicking on its “Summary” tab), I don't get an image preview. The “More -> “Preview” option is also not available, so I also cannot annotate the image. The attached image should illustrate this.
This seems to happen to all imported PNG files. JPEGs on the other hand are fine.
The following error is consistently logged in the Nuxeo server log when I import a PNG via drag and drop:
2013-09-16 22:39:07,098 ERROR [org.nuxeo.ecm.webapp.context.NavigationContextBean] <resetCurrentPath> documentManager not initialized
Does anyone have any pointers as to what is happening here?
Can you share one of your PNG files - I'm running 5.6 and can import and see PNGs in DM and DAM.
Long overdue update to this thread for completeness – using Nuxeo 5.8 LTS installed on the rapid development branch of OpenIndiana, I no longer see this issue. PNGs can be previewed without problems. The primary difference aside from a more recent Nuxeo version is a later build of ImageMagick (18.104.22.168). I'll posit that this was likely the problem to begin with, as Bruce suggested.
There is a possibility this is ImageMagick and memory related. Is there sufficient available memory allocated to/available for ImageMagick? Can you convert the PNG in question using ImageMagick on the command line?
Almost appears as though the PNG mime type is being processed by the wrong FileManagerService plugin. If you're comfortable with XML you could try creating an override for the PNG mimetype with a low order (high priority) to see if this resolves the issue with PNG files. Something like…
<?xml version="1.0"?> <component name="com.concena.grip.dam.core.filemanager.plugins"> <require>org.nuxeo.ecm.platform.filemanager.service.FileManagerService.Plugins</require> <require>org.nuxeo.ecm.platform.picture.filemanager.contrib</require> <extension target="org.nuxeo.ecm.platform.filemanager.service.FileManagerService" point="plugins"> <plugin name="Imageplugin" class="com.nuxeo.ecm.platform.picture.extension.ImagePlugin" order="5"> <filter>image/png</filter> </plugin> ....
I know you said it was a fresh install, but do you have any customizations on top of your Nuxeo install?
Thanks for this - I'm not terribly au fait with XML but will certainly give this a crack. I can confirm that the only customisation I've performed on this install is to configure external PostgreSQL connectivity, secure LDAP authentication, and importing both database and VCS data from an alternate Nuxeo 5.6 install. Everything else is stock, but I wonder if the database and data import has some relation to this - to rule this out I'll reinstall 5.6, (if that doesn't work, I'll try 5.7.2) and see if I can reproduce this.
This is really weird :) Could you do an XML export of your document? It would be helpful to know its type and the detected mime type of the image.
Thanks for replying - the following ZIP contains two sample files (one PNG, one JPG), a small screencast so you can see the issue in action (comparing the PNG against the JPG), and an XML export of the Nuxeo DM workspace containing the two files.
I'll run it again tomorrow and collect debug output.
Here we are:
The procedure involved:
- Logged into Nuxeo and navigated to my test workspace
- Dragged and droppped the "gimpflames.png" file into the workspace
- Clicked on the image link to attempt to view its properties
- Stopped Nuxeo using the nuxeoctl app
The action seems to happen from the "2013-09-19 12:42:22" timestamp onwards.
There also seems to be some additional detail around the "documentManager not initialized" error, for example:
2013-09-19 12:42:25,243 DEBUG [org.nuxeo.ecm.webapp.pagination.ResultsProvidersCacheBean] Initializing… 2013-09-19 12:42:25,243 DEBUG [org.nuxeo.ecm.webapp.pagination.ResultsProvidersCacheBean] Constructing a new, empty cache 2013-09-19 12:42:25,243 DEBUG [org.nuxeo.ecm.webapp.pagination.ResultsProvidersCacheBean] Invalidating provider 'CURRENT_DOC_DELETED_CHILDREN' 2013-09-19 12:42:25,245 DEBUG [org.nuxeo.ecm.webapp.tree.TreeActionsBean] Could not initialize the navigation tree: no parent found for current document 2013-09-19 12:42:25,247 ERROR [org.nuxeo.ecm.webapp.context.NavigationContextBean] <resetCurrentPath> documentManager not initialized
Hopefully this sheds some light on things :)