[英]How do I fix Guidewire ClaimCenter com.guidewire.pl.system.exception.UpgradeException
[英]How to resolve upgrade exception in guidewire
當我在 guidewire CC 中啟動服務器時,出現此錯誤。
com.guidewire.pl.system.exception.UpgradeException:加密已被刪除或更改,但未定義 OldEncryption 插件。 有關加密升級的詳細信息,請參閱您的文檔。
請幫我解決這個錯誤。
當 ClaimCenter 檢測到您在沒有正確注冊舊插件的情況下更改了加密方案時,就會發生此異常。
您可以擁有多個實現IEncryption
接口的插件。
假設您正在使用通過SHA1Encryption.gwp
插件注冊表注冊的 SHA1 加密:
<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 應用程序代碼庫所期望的。
config.xml
文件中CurrentEncryptionPlugin
的值是多少?
<!-- The name of the current encryption plugin. -->
<param name="CurrentEncryptionPlugin" value="AESEncrypter"/>
我發現這是因為我沒有將 extensions.properties 文件更新為最新的數字。 修理:
我做完這件事后就定了。
假裝這種異常的簡單方法,
從database-confix.xml更改數據庫路徑
打開extension.property
文件
文件的內容將類似於
version=34
如果您對任何現有表結構進行了更改,則將 version 的值加一
重啟服務器
每當獲得此 UpgradeException 時,更新的升級版本號會與舊版本號一起顯示在控制台中。 您必須更新 extension.property 文件中的新號碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.