CAPTCHA image does not display when Confluence is hosted on a non-English system

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

Symptoms

When a CAPTCHA should be displayed after repeated failed login attempts, instead a broken image link is displayed.

The following appears in the atlassian-confluence.log:

1 2 3 2012-10-05 15:01:27,053 ERROR [http-8090-1] [[Standalone].[localhost].[/].[jcaptcha]] log Servlet.service() for servlet jcaptcha threw exception com.octo.captcha.CaptchaException: word is too tall: try to use less letters, smaller font or bigger background: text bounds = {text=tasble ...

Cause 1:

The system default encoding is set to something other than UTF-8, which has caused the font used when generating the CAPTCHA image to be something other than what is normally used. This font generates CAPTCHA strings that are too large to fit in the image size, causing an exception. This is common for Chinese/Korean servers.

Resolution 1:

  • Restart Confluence

Resolution 2:

If the issue is not resolved after following Resolution 1, then it is worth checking the language set for Confluence. This is common for Chinese/Korean servers.

  • This can be checked by checking JVM flag values. For example, if you face this issue and if the JVM flags are set to -Duser.language=ko -Duser.country=KR , change it to -Duser.language=en -Duser.country=US

  • Restart Confluence and check if the issue is resolved.

Updated on April 8, 2025

Still need help?

The Atlassian Community is here for you.