Quartz is a great idea, but might be a bit of overkill depending on what you need.   I think youre real issue is trying to cram your service into a servlet, when you aren't actually listening to incoming HttpServletRequests. Instead, consider using a ServletContextListener to start up your service, and a Timer, as Maurice suggested:
web.xml:
<listener>
    <listener-class>com.myCompany.MyListener</listener-class>
</listener>
And then your class looks like this:
public class MyListener implements ServletContextListener {
    /** the interval to wait per service call - 1 minute */
    private static final int INTERVAL = 60 * 60 * 1000;
    /** the interval to wait before starting up the service - 10 seconds */
    private static final int STARTUP_WAIT = 10 * 1000;
    private MyService service = new MyService();
    private Timer myTimer;
    public void contextDestroyed(ServletContextEvent sce) {
     service.shutdown();
     if (myTimer != null)
      myTimer.cancel();
    }
    public void contextInitialized(ServletContextEvent sce) {
        myTimer = new Timer();
        myTimer.schedule(new TimerTask() {
      public void run() {
       myService.provideSomething();
      }
        },STARTUP_WAIT, INTERVAL
      );
    }
}