I am not sure my self if this works but have you tried @Destroy annotation on your application scoped component? Maybe you still have transaction available. Worth a try.
No, the event context is already destroyed at that point.
I will have to check if there is a JIRA issue on this, I would think there would be quite a few use cases in which you would want to know when the application is shutting down, right?