Is there any way to do this within JBoss, ie, to have a task that runs on some specific day of the month? I can see in the scheduler documentation (http://docs.jboss.org/jbossas/jboss4guide/r5/html/ch10.html#ch10.sched) that I could have it call a method every 24 hours, for example, so an easy hack would be to have an object that gets called every day, and it checks which day of the month it is, and if it's the correct day, do its thing, or return otherwise. But that seems like a hack and if it somehow runs twice in a month that would be bad. Surely in a system as advanced as JBoss there's a way to do this?
Many versions of JBoss ship with this:
http://www.opensymphony.com/quartz/
It also is for EJB timers. JBoss supports MDBs receiving jobs as well.