I think I have uncovered a bug related to custom tabs. When a user adds a custom tab with an URL containing an ampersand (&), the config file will become invalid. The page will load fine in Jabber, but when restarting Jabber, the custom tab will be lost, along with all other custom tabs and possibly other settings as well. The problem seems to be that the URL is not properly encoded before it gets added to the config file which then becomes invalid.
We have created a workaround for our service by changing our URL structure so this is not a problem for us at the moment, but it should probably be fixed in Jabber to prevent problems for other websites. Not sure where to report this bug, but hopefully it will be picked up by someone here.
Tested on Jabber 9.6.1.
This is an xml limitation:
"Your XML can contain only valid XML character entity references. For example, use & instead
of &. If your XML contains invalid characters, the client cannot parse the configuration file"
I'm not talking about users adding tabs by editing the XML file manually - the problem occurs when users add a custom tab using the following method:
|Step 1||Select File > New > Custom Tab.|
The Create new custom tab dialog opens.
|Step 2||Add details for your custom tab in the following fields:|
|Step 3||Select Create.|
The custom tab is added to the main window.
So the problem is that when the user enters a valid URL containing an ampersand, the Jabber client should rewrite it to valid XML before adding it to the XML file, but it doesn't.