Unable to preview images on a Confluence page

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

Clicking on an image within any Confluence page does not open a preview window.

Diagnosis

  • The image preview does not display anything.

  • The atlassian-confluence.log shows this message:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 2020-08-09 09:26:56,639 ERROR [http-nio-8080-exec-103] [ContainerBase.[Standalone].[localhost].[/]] log Unhandled exception occurred whilst decorating page -- referer: https://confluenceXXXXXXXXXXXXXXXX | url: /plugins/servlet/XXXXXXXX.png | traceId: XXXXXXXXXX | userName: XXXXXXXXXXX java.lang.RuntimeException: org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe at com.atlassian.confluence.image.effects.ImageFilterServlet.uncheckAndIgnoreClientAbortExceptions(ImageFilterServlet.java:471) at com.atlassian.confluence.image.effects.ImageFilterServlet.lambda$doGet$0(ImageFilterServlet.java:150) at com.atlassian.sal.core.transaction.HostContextTransactionTemplate$1.doInTransaction(HostContextTransactionTemplate.java:21) at com.atlassian.sal.spring.component.SpringHostContextAccessor.lambda$doInTransaction$0(SpringHostContextAccessor.java:70) at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140) at com.atlassian.sal.spring.component.SpringHostContextAccessor.doInTransaction(SpringHostContextAccessor.java:68) at com.atlassian.confluence.spring.transaction.interceptor.ConfluenceSpringHostContextAccessor.access$001(ConfluenceSpringHostContextAccessor.java:21) at com.atlassian.confluence.spring.transaction.interceptor.ConfluenceSpringHostContextAccessor.lambda$doInTransaction$3(ConfluenceSpringHostContextAccessor.java:72) at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContextInternal(VCacheRequestContextManager.java:84) at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContext(VCacheRequestContextManager.java:68) at com.atlassian.confluence.spring.transaction.interceptor.ConfluenceSpringHostContextAccessor.doInTransaction(ConfluenceSpringHostContextAccessor.java:72) at com.atlassian.sal.core.transaction.HostContextTransactionTemplate.execute(HostContextTransactionTemplate.java:18) at sun.reflect.GeneratedMethodAccessor289.invoke(Unknown Source) Caused by: org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:351) at org.apache.catalina.connector.OutputBuffer.flushByteBuffer(OutputBuffer.java:776) at org.apache.catalina.connector.OutputBuffer.append(OutputBuffer.java:681) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:386) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:364) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:96) at com.atlassian.confluence.web.filter.ResponseOutputStreamFilter$NoopAfterCloseOutputStream.write(ResponseOutputStreamFilter.java:100) at com.atlassian.gzipfilter.RoutableServletOutputStream.write(RoutableServletOutputStream.java:134) at com.opensymphony.module.sitemesh.filter.RoutableServletOutputStream.write(RoutableServletOutputStream.java:118) at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:2315) at org.apache.commons.io.IOUtils.copy(IOUtils.java:2270) at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:2291) at org.apache.commons.io.IOUtils.copy(IOUtils.java:2246) at com.atlassian.confluence.image.effects.ImageFilterServlet.copyToResponse(ImageFilterServlet.java:295) at com.atlassian.confluence.image.effects.ImageFilterServlet.respondWithGeneratedPreview(ImageFilterServlet.java:183) at com.atlassian.confluence.image.effects.ImageFilterServlet.doGetInTransaction(ImageFilterServlet.java:159) at com.atlassian.confluence.image.effects.ImageFilterServlet.lambda$doGet$0(ImageFilterServlet.java:148)

Cause

The Confluence Preview plugin is not active.

Solution

To enable the plugin, please follow these steps:

  1. Go to Cog Icon.

  2. Select Manage Apps.

  3. On the Manage Apps screen, select the Option "All apps".

  4. Search for "Confluence Preview" on the list.

  5. Expand the "Confluence Preview" and click Enable.

See Also

Attachment Preview is not Working

Updated on February 25, 2025

Still need help?

The Atlassian Community is here for you.