Merge branch 'enum_type_fix' into 'ibm-trunk'

Enum type fix

Find the correct Class in an enum's type hierarchy to use in the call to Enum.valueOf()

See merge request !45