Here is what I found out when trying to save a String[] as a process variable:
With MySql everything works fine, I can save my array and retreive it later without any problem, the default configuration of the engine handles it very well. The converter class used by the engine for that is: "org.jbpm.context.exe.converter.SerializableToByteArrayConverter" saved with the "R" char value in the CONVERTER_ column of the JBPM_VARIABLEINSTANCE table.
The problem is when using Oracle, the same code fails to find the converter... The VariableInstance is instantiated with a null converter and then the value cannot be restored.
I found out that, in ConverterEnumType.nullSafeGet method, the call to resultSet.getString(names[0]) returns "R " instead of "R". This is what happen with Oracle (but not with MySql). Because of the extra space, the converter class cannot be found...