Alright the problem seems to be in declaration of variables. As 5.4 is now aware of data types you need to specify correct data types. for instance you have variable:
<variable name="isApproved" >
<type name="org.drools.process.core.datatype.impl.type.ObjectDataType" className="java.lang.String" />
</variable>
but as you can see data type (name attribute) refers to ObjectDataType and that's why xstream comes into play. if you define correct data type:
<variable name="isApproved" >
<type name="org.drools.process.core.datatype.impl.type.StringDataType" />
</variable>
it should work properly. Same should be done for boolean, integer and float data types.
When using droolsjbpm eclipse plugin to edit variables it should be enough to select String as type from dropdown.
HTH