JBoss4 to JBoss5 is a major upgrade. So we cannot always guarantee that methods will not be added or deprecated in JBoss interfaces, across major revisions.
We make efforts to maintain backwards compatibility as much as possible.
The getTargetPrincipal was mainly added to focus on identities across security domains such as federated domains. So it is only for special usage. You can just throw a RuntimeException if you want.