fork/copy from previous version with source and translation

http://bugzilla.redhat.com/show_bug.cgi?id=1104015
I'm surprised this isn't getting us in trouble. Usually when using `ServiceLocator` it's better to scope the located bean to the invoked method. This is because Seam's lifecycle has a habit of "stripping" all injections from the bean after a method invocation finishes, or after the context has been destroyed.

In this case, I think the fact that the class is holding on to an Application-scoped bean is what is saving us, but if that bean were request-scoped for instance, we would start seeing a bunch of exceptions.