Broken URL in Notification Containing Plugins/Servlet/Undefined

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

症状

URLs in the Notification box take you to a "page not found" page but the URLs work if you remove plugins/servlet/undefined for example:

Wrong URL: http://company.com/confluence/plugins/servlet/undefined/display/SPACE/page

Correct URL: http://company.com/confluence/display/SPACE/page


The <Confluence Home>/logs/atlassian-confluence.log will contain a message similar to the following:

Caused by: java.sql.SQLException: Incorrect string value: '\xE7\xB2\x89\xE4\xB8\x9D...' for column 'BODY' at row 1

診断

 Run the following query to check the database collation. If latin1 is returned, the collation will need to be changed.

SELECT TABLE_SCHEMA,
TABLE_NAME,
CCSA.CHARACTER_SET_NAME AS DEFAULT_CHAR_SET,
COLUMN_NAME,
COLUMN_TYPE,
C.CHARACTER_SET_NAME, ENGINE
FROM information_schema.TABLES AS T
JOIN information_schema.COLUMNS AS C USING (TABLE_SCHEMA, TABLE_NAME)
JOIN information_schema.COLLATION_CHARACTER_SET_APPLICABILITY AS CCSA
ON (T.TABLE_COLLATION = CCSA.COLLATION_NAME)
WHERE TABLE_SCHEMA=SCHEMA()
AND C.DATA_TYPE IN ('enum', 'varchar', 'char', 'text', 'mediumtext', 'longtext')
ORDER BY TABLE_SCHEMA,
TABLE_NAME,
COLUMN_NAME;

原因

Latin1 collation does not support some special characters like emoji.

ソリューション

Use native database tools to convert the database to utf8_bin collation.

最終更新日 2016 年 4 月 7 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.