1. Problem: Instead of the Sync profiles, an error message is displayed in the 'Discovery Server' tab of the JDisc Connector add-on.
In addition, an error message is logged by the web server in error.log:
Got error 'PHP message: PHP Fatal error: Uncaught TypeError: json_decode(): Argument #1 ($json) must be of type string, null given in /var/www/html/src/classes/modules/synetics_jdisc/src/Model/JDiscProfileDao.php:850Stack trace:
#0 /var/www/html/src/classes/modules/synetics_jdisc/src/Model/JDiscProfileDao.php(850): json_decode()
#1 /var/www/html/src/classes/modules/synetics_jdisc/src/Model/JDiscProfileDao.php(705): idoit\\Module\\SyneticsJdisc\\Model\\JDiscProfileDao->prepareTypeMap()
#2 /var/www/html/src/classes/modules/synetics_jdisc/src/Model/JDiscProfileDao.php(137): idoit\\Module\\SyneticsJdisc\\Model\\JDiscProfileDao->processRow()
#3 /var/www/html/src/classes/modules/synetics_jdisc/src/Controller/SyncProfileController.php(146): idoit\\Module\\SyneticsJdisc\\Model\\JDiscProfileDao->getData()
#4 /var/www/html/vendor/symfony/http-kernel/HttpKernel.php(181): idoit\\Module\\SyneticsJdisc\\Controller\\SyncProfileController->find()
#5 /var/www/ht...', referer: http://i-doit/synetics_jdisc/iframe/sync-profile
Solution: Tables in the database must be edited.
Log in to the DB, e.g. via mysql -u root -p and then select the i-doit client database withuse idoit_data;.
The entries in the first column are then changed with:
UPDATE isys_jdisc_object_type_assignment SET isys_jdisc_object_type_assignment__port_filter_type = '[]' WHERE isys_jdisc_object_type_assignment__port_filter_type IS NULL;and then the second column with:
UPDATE isys_jdisc_object_type_assignment SET isys_jdisc_object_type_assignment__port_filter = '[]' WHERE isys_jdisc_object_type_assignment__port_filter IS NULL;Now log out with exit and log in to i-doit and open the sync profiles again.
2. Problem: JDisc Connector is running in an i-doit installation with MySQL > 8.0.13. After installing the add-on, no profile is displayed in the Sync Profile menu and a red error message appears
Solution:
Log in to the database via a MySQL client with:
mysql -u root -p
Now select the affected database.
USE idoit_data;
If the error occurs for multiple databases, this step must be performed for all affected databases. This may be the case if there are multiple clients.
Now execute this SQL statement:
ALTER TABLE `isys_jdisc_profile`
ADD `isys_jdisc_profile__column_settings` JSON NULL DEFAULT ('{"jdisc-os":1,"object-title-transform":1,"fqdn-addition":1,"port-filter":1,"location":1}');The example profile is then visible and profiles can be saved.
Comments
0 comments
Please sign in to leave a comment.