Details
Description
XStream 1.3 does not support Java 7. Here are a couple issues that occur in Mirth Connect:
When executing a "Test Read" from the Administrator:
com.thoughtworks.xstream.converters.ConversionException: Cannot construct XXXXXXXXX as it does not have a no-args constructor
On first startup:
ERROR 2011-02-16 13:01:40,326 [Thread-1] com.mirth.connect.server.controllers.DefaultConfigurationController: error loading encryption key
com.thoughtworks.xstream.converters.ConversionException: Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null : Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null
---- Debugging information ----
message : Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null
cause-exception : com.thoughtworks.xstream.converters.reflection.ObjectAccessException
cause-message : Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null
class : com.sun.crypto.provider.DESedeKey
required-type : com.sun.crypto.provider.DESedeKey
line number : 1
-------------------------------
When executing a "Test Read" from the Administrator:
com.thoughtworks.xstream.converters.ConversionException: Cannot construct XXXXXXXXX as it does not have a no-args constructor
On first startup:
ERROR 2011-02-16 13:01:40,326 [Thread-1] com.mirth.connect.server.controllers.DefaultConfigurationController: error loading encryption key
com.thoughtworks.xstream.converters.ConversionException: Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null : Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null
---- Debugging information ----
message : Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null
cause-exception : com.thoughtworks.xstream.converters.reflection.ObjectAccessException
cause-message : Cannot create java.security.KeyRep by JDK serialization : unrecognized type/format combination: null/null
class : com.sun.crypto.provider.DESedeKey
required-type : com.sun.crypto.provider.DESedeKey
line number : 1
-------------------------------
Change ObjectXMLSerializer to use new XStream(new Sun14ReflectionProvider(), new XppDriver());