Since you don't need to modify Jersey itself at startup time you probably don't want an AbstractResourceModelListener. What you want is a javax.servlet.ServletContextListener. You can add listener elements to your web.xml in the same way you add servlet elements. The ServletContextListener will get called when your context (web application) first gets created and before the Jersey servlet is started. You can do whatever you need to the database in this listener and it will be ready when you start using Jersey.