This exception happens when ClaimCenter detects that you have changed encryption schemes without properly leaving the old plugin registered.
You can have multiple plugins which implement the IEncryption
interface.
Lets say you're using SHA1 encryption registered through a SHA1Encryption.gwp
Plugin Registry:
<plugin
interface="IEncryption"
name="SHA1Encryption">
<plugin-gosu
gosuclass="com.mycompany.plugins.encryption.SHA1EncryptionPluginImpl"/>
</plugin>
And configured in config.xml
:
<!-- The name of the current encryption plugin. -->
<param name="CurrentEncryptionPlugin" value="SHA1Encryption"/>
Then you decide to switch to AES encryption.
You first have to create a new Plugin Registry file AESEncryption.gwp
:
<plugin
interface="IEncryption"
name="AESEncryption">
<plugin-gosu
gosuclass="com.mycompany.plugins.encryption.AESEncryptionPluginImpl"/>
</plugin>
Then you have to modify the config.xml
to tell ClaimCenter to use the new Plugin:
<!-- The name of the current encryption plugin. -->
<param name="CurrentEncryptionPlugin" value="AESEncryption"/>
Do not remove the SHA1Encryption.gwp
Plugin Registry.
ClaimCenter keeps track of the Encryption Plugin used to encrypt each record, by NAME of the Plugin Registry file. If it can't find the file, you will get this error.
ClaimCenter is also capable of detecting that the implementation class has changed even if the plugin name hasn't (metadata change). In that case, it looks for a Plugin Registry named OldEncryption.gwp
.
If it can't find the specific name, AND can't find OldEncryption.gwp
, then you will get this error.
More information can be found in the Integration Guide from Guidewire.