Scheduler Application
![]() | Manages Scheduler Jobs |
| Type | XAR |
| Category | |
| Developed by | |
| Rating | |
| License | GNU Lesser General Public License 2.1 |
| Bundled With | XWiki Standard |
Table of contents
Description
Offers a dashboard of defined jobs and the ability to perform actions on these jobs (cancel, reschedule, edit, etc). The application is available on the Scheduler space of your wiki.
Usage
Accessing the Application
Log in with a user having Admin rights and access the Application Index from the Drawer (top right menu) and select the Scheduler application:

Note for technical users: you can directly access the application by navigating manually to the Scheduler/WebHome page.
Clicking this link will get you to the Scheduler home page:

Creating a new Job

The cron expressions are used to configure how often the jobs will be triggered. Cron expressions are strings that are actually made up of seven sub-expressions, that describe individual details of the schedule (see this tutorial on the quarts scheduler documentation). These sub-expression are separated with white-space, and represent:
- Seconds
- Minutes
- Hours
- Day-of-Month
- Month
- Day-of-Week
- Year (optional field)
Below some example of valid cron expression, from the official quartz scheduler documentation:
| Cron expression | Meaning |
|---|---|
| 0 15 10 * * ? | Fire at 10:15am every day |
| 0 15 10 ? * MON-FRI | Fire at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday |
| 0 0/5 14 * * ? | Fire every 5 minutes starting at 2pm and ending at 2:55pm, every day |
| 0 15 10 ? * 6L | Fire at 10:15am on the last Friday of every month |
The job script needs to be written in the Groovy language, using XWiki's Groovy APIs (the services variable is available, as well as xwiki and xcontext - see also the scripting documentation). Because of the context in which the scheduler jobs are executed, there is no request, response or current document, so those bindings are not available.
⚠ As opposed to the other places where these variables are available, in the scripting context of Scheduler jobs, the variables xwiki and xcontext are bound to the protected APIs, of types com.xpn.xwiki.XWiki and com.xpn.xwiki.XWikiContext respectively.
Scheduling a job
Click on the "Schedule" action to register the job and display the next time it will be fired.
A job can be triggered manually by using the "Trigger" action. Notice that it needs to be scheduled first to be triggered this way.
Advanced
By default, the user used to execute the Scheduler job is the user who created the job page. However, it's possible to change it by editing the job page using the Object Editor and changing the "Job execution context user" as shown on the next image.
Similarly, you can change the language used when executing the job script or the wiki (a.k.a database) for which the script will be executed.

Prerequisites & Installation Instructions
We recommend using the Extension Manager to install this extension (Make sure that the text "Installable with the Extension Manager" is displayed at the top right location on this page to know if this extension can be installed with the Extension Manager). Note that installing Extensions when being offline is currently not supported and you'd need to use some complex manual method.
You can also use the following manual method, which is useful if this extension cannot be installed with the Extension Manager or if you're using an old version of XWiki that doesn't have the Extension Manager:
- Log in the wiki with a user having Administration rights
- Go to the Administration page and select the Import category
- Follow the on-screen instructions to upload the downloaded XAR
- Click on the uploaded XAR and follow the instructions
- You'll also need to install all dependent Extensions that are not already installed in your wiki
Dependencies
Dependencies for this extension (org.xwiki.platform:xwiki-platform-scheduler-ui 17.4.0):
- org.xwiki.platform:xwiki-platform-scheduler-api 17.4.0
- org.xwiki.platform:xwiki-platform-rendering-macro-include 17.4.0
- org.xwiki.platform:xwiki-platform-rendering-macro-velocity 17.4.0
- org.xwiki.rendering:xwiki-rendering-macro-html 17.4.0
- org.xwiki.rendering:xwiki-rendering-macro-message 17.4.0
- org.xwiki.platform:xwiki-platform-rendering-macro-code 17.4.0

