Ich möchte ausdrücklich eine Transaktion auf eine JavaEE MDB rückgängig zu machen:Wie MessageDrivenContext-Injektion aktivieren?
private MessageDrivenContext context;
@MessageDriven(mappedName = "jms/ReaderQueue", activationConfig = {
@ActivationConfigProperty(
propertyName = "acknowledgeMode",
propertyValue = "Auto-acknowledge"),
@ActivationConfigProperty(
propertyName = "destinationType",
propertyValue = "javax.jms.Queue")
})
public class MessageReaderBean implements MessageListener {
public void onMessage(Message message) {
ctx.setRollbackOnly(); // <-- see here, my good fellow!
}
public void setMessageDrivenContext(MessageDrivenContext ctx) throws EJBException {
this.context = ctx;
}
}
jedoch der Behälter nicht setMessageDrivenContext
für mich nicht anrufen und ich NullPointerException
bekommen. Welche magische Soße brauche ich, um den Kontext injizieren zu lassen?
PS, ich verwende WebSphere 7. – Synesso