Page appears blank after adding the Widget Connector macro.

Still need help?

The Atlassian Community is here for you.

Ask the community


Platform notice: Server and Data Center only. This article only applies to Atlassian products on the Server and Data Center platforms.

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

After inserting the Widget Connector Macro , the  preview works fine  but after adding it to the page, it shows as a blank page and nothing appears after saving the page.

Diagnosis

  • In the application log, the below stack trace is seen.

2023-04-12 09:01:54,347 ERROR [http-nio-8090-exec-3] [rest.api.model.ExceptionConverter] convertServiceException No status code found for exception, converting to internal server error : 
 -- referer: https://dev.confluence.us-east-1.opse.c1.vanguard.com/pages/editpage.action?pageId=697106446 | url: /rest/tinymce/1/macro/placeholder | traceId: 075c70b257ab121e | userName: UX159986
java.lang.RuntimeException: com.atlassian.confluence.content.render.xhtml.XhtmlTimeoutException: Rendering this content exceeded the timeout of 5 seconds.
    at com.atlassian.confluence.tinymceplugin.rest.MacroResource.generatePlaceHolder(MacroResource.java:178)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Caused by: com.atlassian.confluence.content.render.xhtml.XhtmlTimeoutException: Rendering this content exceeded the timeout of 5 seconds.
    at com.atlassian.confluence.content.render.xhtml.XhtmlTimeoutException.createForTimeout(XhtmlTimeoutException.java:33)
    at com.atlassian.confluence.content.render.xhtml.XhtmlTimeoutException.forTimeout(XhtmlTimeoutException.java:24) 

Probable Cause

This issue can happen due to multiple reasons which can be blocking the URL to be previewed, please refer to the solution section for more details.

Probable Solutions

Below are various solutions which worked in similar cases. These solutions can be checked one by one.

  • First, try to make sure that Confluence is  trusting  the URL. Below are the steps to be performed. For example, Youtube:
  • Try to  add two backslashes  at the end of the youtube link as shown below (This solution has worked in the past for a few other customers)
  • Try to increase the below timeout value.
     Always take a  backup  of your Confluence home and installation directories.
  • Edit the <installation-directory>/bin/setenv.sh ( to extend timeout to 30s):

    CATALINA_OPTS="-Dconfluence.macro.placeholder.timeoutMillis=<value> ${CATALINA_OPTS}"
    • Time should be provided in millisecond  equivalent of seconds for example to use the 30s value parameter should have the following form:

    •  CATALINA_OPTS="-Dconfluence.macro.placeholder.timeoutMillis=30000${CATALINA_OPTS}" 

      Restart  Confluence so the value takes effect and then check by adding youtube links,  Test it with multiple youtube links.

    • If the above step doesn't resolve the issue, let's temporarily setup  reverse proxy bypass  according to  How to bypass a reverse proxy or SSL in Application Links to eliminate reverse-proxy configuration from the list of possible root-causes
      • Then Change configuration in Confluence home > General Configuration > Server Base URL to reflect bypass proxy like this  http://<ip>:<port>
      • Stop Confluence, clean plugins cache, and start Confluence.
      • After this, you can test the issue on  http://<ip>:<port>  without a proxy. Please test changes first on a test environment before applying them to Production.
    • Another thing we can do to isolate (or potentially  work around) the issue is to use  iFrame  to embed the video and see if it works. For that, we need to follow the below steps.
        • Go to Confluence > Choose     > Manage Apps
        • Select All Apps from the drop-down list
        • Search for HTML macros
        • Expand Confluence HTML Macros
        • You should see 2 of 7 modules enabled, click on it and hover at the Disable button for html (html-xhtml)
        • Click Enable
        • Create an empty page
        • Add an "HTML" macro
        • Insert the following iframe code into the macro and save the page.

          <iframe width="420" height="315" src="https://www.youtube.com/embed/Hd0JflMdqyM" frameborder="0" allowfullscreen></iframe>

HTML macros are disabled by default.

The HTML macro will only be available if it has been enabled by an administrator.  Enabling these macros can make your Confluence site vulnerable to  cross-site scripting attacks.

Last modified on Jul 20, 2023

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.