繁体   English   中英

如何解决导丝升级异常

[英]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 文件更新为最新的数字。 修理:

  • 按 Cntl-Shift-n
  • 搜索“extension.properties”
  • 进入文件并将数字更改为适当的数字
  • 节省
  • 重启 Guidewire Studio

我做完这件事后就定了。

假装这种异常的简单方法,
database-confix.xml更改数据库路径

打开extension.property文件

文件的内容将类似于

version=34

如果您对任何现有表结构进行了更改,则将 version 的值加一

重启服务器

每当获得此 UpgradeException 时,更新的升级版本号会与旧版本号一起显示在控制台中。 您必须更新 extension.property 文件中的新号码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM