@@ -102,25 +102,30 @@ public Page<MetadataBitstreamWrapperRest> findByHandle(@Parameter(value = "handl
102102
103103 for (Bitstream bitstream : bitstreams ) {
104104 String url = previewContentService .composePreviewURL (context , item , bitstream , contextPath );
105- List <FileInfo > fileInfos = null ;
105+ List <FileInfo > fileInfos = new ArrayList <>() ;
106106 boolean canPreview = previewContentService .canPreview (context , bitstream );
107107 if (canPreview ) {
108- List <PreviewContent > prContents = previewContentService .hasPreview (context , bitstream );
109- // Generate new content if we didn't find any
110- if (prContents .isEmpty ()) {
111- fileInfos = previewContentService .getFilePreviewContent (context , bitstream );
112- // Do not store HTML content in the database because it could be longer than the limit
113- // of the database column
114- if (!StringUtils .equals ("text/html" , bitstream .getFormat (context ).getMIMEType ())) {
115- for (FileInfo fi : fileInfos ) {
116- previewContentService .createPreviewContent (context , bitstream , fi );
108+ try {
109+ List <PreviewContent > prContents = previewContentService .hasPreview (context , bitstream );
110+ // Generate new content if we didn't find any
111+ if (prContents .isEmpty ()) {
112+ fileInfos = previewContentService .getFilePreviewContent (context , bitstream );
113+ // Do not store HTML content in the database because it could be longer than the limit
114+ // of the database column
115+ if (!StringUtils .equals ("text/html" , bitstream .getFormat (context ).getMIMEType ())) {
116+ for (FileInfo fi : fileInfos ) {
117+ previewContentService .createPreviewContent (context , bitstream , fi );
118+ }
119+ }
120+ } else {
121+ fileInfos = new ArrayList <>();
122+ for (PreviewContent pc : prContents ) {
123+ fileInfos .add (previewContentService .createFileInfo (pc ));
117124 }
118125 }
119- } else {
120- fileInfos = new ArrayList <>();
121- for (PreviewContent pc : prContents ) {
122- fileInfos .add (previewContentService .createFileInfo (pc ));
123- }
126+ } catch (Exception e ) {
127+ log .error ("Cannot create preview content for bitstream: {} because: {}" ,
128+ bitstream .getID (), e .getMessage ());
124129 }
125130 }
126131 MetadataBitstreamWrapper bts = new MetadataBitstreamWrapper (bitstream , fileInfos ,
0 commit comments