Как устранить исключение обновления в guidewire
Когда я запустил сервер в guidewire CC, я получил эту ошибку.
com.guidewire.pl.system.exception.UpgradeException: шифрование было удалено или изменено, но плагин OldEncryption не определен. Пожалуйста, смотрите вашу документацию для деталей об обновлении шифрования.
Пожалуйста, помогите мне решить эту ошибку.
4 ответа
Это исключение происходит, когда ClaimCenter обнаруживает, что вы изменили схемы шифрования, не оставив должным образом зарегистрированный старый плагин.
Вы можете иметь несколько плагинов, которые реализуют IEncryption
интерфейс.
Допустим, вы используете шифрование SHA1, зарегистрированное через SHA1Encryption.gwp
Реестр плагинов:
<plugin
interface="IEncryption"
name="SHA1Encryption">
<plugin-gosu
gosuclass="com.mycompany.plugins.encryption.SHA1EncryptionPluginImpl"/>
</plugin>
И настроен в config.xml
:
<!-- The name of the current encryption plugin. -->
<param name="CurrentEncryptionPlugin" value="SHA1Encryption"/>
Затем вы решаете перейти на шифрование AES.
Сначала вы должны создать новый файл реестра плагинов. AESEncryption.gwp
:
<plugin
interface="IEncryption"
name="AESEncryption">
<plugin-gosu
gosuclass="com.mycompany.plugins.encryption.AESEncryptionPluginImpl"/>
</plugin>
Затем вы должны изменить config.xml
сказать ClaimCenter использовать новый плагин:
<!-- The name of the current encryption plugin. -->
<param name="CurrentEncryptionPlugin" value="AESEncryption"/>
Не удаляйте SHA1Encryption.gwp
Реестр плагинов.
ClaimCenter отслеживает подключаемый модуль шифрования, используемый для шифрования каждой записи, по ИМЯ файла реестра подключаемых модулей. Если он не может найти файл, вы получите эту ошибку.
ClaimCenter также способен обнаруживать, что класс реализации изменился, даже если имя плагина не изменилось (изменение метаданных). В этом случае он ищет реестр плагинов с именем OldEncryption.gwp
,
Если он не может найти конкретное имя, И не может найти OldEncryption.gwp
, тогда вы получите эту ошибку.
Дополнительную информацию можно найти в Руководстве по интеграции от Guidewire.
Похоже, база данных, к которой вы подключаетесь, является более новой или зашифрованной версией, которую ожидает ваша кодовая база приложения Guidewire.
Какова стоимость CurrentEncryptionPlugin
в вашем config.xml
файл?
<!-- The name of the current encryption plugin. -->
<param name="CurrentEncryptionPlugin" value="AESEncrypter"/>
Простой способ имитировать этот тип исключений,
изменив путь к БД с database-confix.xml
Я обнаружил, что это произошло из-за того, что я не обновил файл extensions.properties до последнего номера. Исправить:
- Нажмите Cntl-Shift-n
- Искать "extension.properties"
- Зайдите в файл и измените номер на соответствующий номер
- Сохранить
- Перезапустите Guidewire Studio.
Я был настроен после того, как сделал это.
Всякий раз, когда будет получено это UpgradeException, более новый номер версии обновления отображается в консоли вместе со старым номером версии. Вы должны обновить новый номер в файле extension.property.
Открыто extension.property
файл
содержимое файла будет как
version=34
увеличить значение версии на единицу, если вы внесли изменения в любую из существующих структур таблиц
Перезагрузите сервер