a RevisionListener is not an EJB3 compoent so injection won't work there. You can obtain it most probably via JNDI or some other static way. Or, you can get access to the revision entity from the audit reader.
Thanks Adam for your answer.
What do you mean by "some other static way" ? I don't see how this would work in a multi user clients environment (for my case swing rich clients talking to EJBs)?
Well, in many components systems you can access components using some static methods. In Seam, for example, you can do this using Components.get(name). With EJB3, you can access components using JNDI (InitialContext)