Server ID Shows as $action.serverId, $action.sid or n.v.
症状
- When looking at the Server ID field in
Administration >> License Details, the value$action.serverIdappears. This may result in an upgrade problem documented at CONFSERVER-10576 - Upgrade fails due to NullPointerException in ConfluenceTrustedApplicationsManager. - When looking at the Server ID field in
Administration >> License Details, the value$action.sidappears. Or when looking at the Server-ID field inAdministration >> System Information, the valuen.v.appears.
原因
- There is no Server ID on the database.
- There is a Server ID on the database, but it's somehow malformed and hence Confluence couldn't pick it up.
ソリューション
データベースの変更を行う場合は必ず事前にバックアップを取得してください。可能な場合は、まずステージング サーバーで SQL コマンドの変更、挿入、更新、または削除を行うようにします。
データベースの変更を行う場合は必ず事前にバックアップを取得してください。可能な場合は、まずステージング サーバーで SQL コマンドの変更、挿入、更新、または削除を行うようにします。
Cause #1
- If you are using Confluence 3.x and above, to find your Server ID:
- Open <your-confluence-home-folder>/confluence.cfg.xml
Find the confluence.setup.server.id property:
<property name="confluence.setup.server.id">XXXX-XXXX-XXXX-XXXX</property>Note the Server ID
- Proceed to Step 3
Check the Server ID in the database:
select * from BANDANA where bandanakey = 'confluence.server.id';It should return an empty result. If so, proceed with the next step. Otherwise, it should be the cause #2.
Insert the correct Server ID by running the following SQL query against Confluence database:
INSERT INTO BANDANA VALUES (FREE-BANDANAID-VALUE, '_GLOBAL', 'confluence.server.id', '<string>Your-Server-ID</string>');Please remember to change Your-Server-ID to your server ID value.
Please remember to change FREE-BANDANAID-VALUE to a free ID value. The BANDANAID value for the serverID is one of the earliest entries in the bandana table (less then 20) so if it is missing there will be a gap in the sequence. Use the value of the missing entry for FREE-BANDANAID-VALUE in the above insert statement. If there is no gap, increment the highest value that is two digits or less by one and use that.
- Confluence を再起動します。
Cause #2
Ensure that the Server ID in the database is in correct format. It should look something like this in
BANDANAtable, otherwise, Confluence won't be able to understand it.BANDANAID BANDANACONTEXT BANDANAKEY BANDANAVALUE 6 _GLOBAL confluence.server.id <string>XXXX-XXXX-XXXX-XXXX</string> Note the
stringtag.If it is not correct, modify it by running the following SQL query:
update BANDANA set bandanavalue = '<string>XXXX-XXXX-XXXX-XXXX</string>' where bandanakey = 'confluence.server.id';- Confluence を再起動します。