You could write a servlet and bind the objetc to JNDI in the initialisation of the servlet.
Or in each of your beans you could check if the item has been bound, if it hasn't been bound you could then create and bind it, you will just need to be careful if there is any chance that two could perform the initialisation at the same time.
The MBean approach is possibly the best choice, don't forget that you should unbind the item from JNDI on undeployment of your application, the MBean also makes this easier if you receive the stop notification.
Cheers, mate. Thanks for your input. I think you have just confirmed certain conclusions that I had. Thanks again :D