Skip to content

Commit 259cb16

Browse files
committed
update quartz docs
1 parent 9394a04 commit 259cb16

3 files changed

Lines changed: 61 additions & 0 deletions

File tree

docs/recipes/scheduler-quartz-clustering.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ This recipe provides detailed instructions for setting up and configuring cluste
2727

2828
For a general overview of the Quartz Scheduler extension, see the [Quartz Scheduler documentation](https://github.com/lucee/lucee-docs/blob/master/docs/recipes/scheduler-quartz.md).
2929

30+
**Prerequisites:** Before configuring clustering, you must first install the Quartz Scheduler extension and configure a gateway instance. See the [Gateway Configuration](scheduler-quartz.md#gateway-configuration-required) section in the main Quartz Scheduler documentation.
31+
3032
## Overview
3133

3234
Clustering in Quartz Scheduler allows you to distribute your scheduled tasks across multiple servers, providing:

docs/recipes/scheduler-quartz-component-jobs.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ Execute CFML components (CFCs) as scheduled tasks with Quartz Scheduler.
2222

2323
For general overview, see [[scheduler-quartz]].
2424

25+
**Prerequisites:** Before creating component-based jobs, you must first install the Quartz Scheduler extension and configure a gateway instance. See the [Gateway Configuration](scheduler-quartz.md#gateway-configuration-required) section in the main Quartz Scheduler documentation.
26+
2527
Advantages over URL-based jobs:
2628

2729
- Full CFML capabilities

docs/recipes/scheduler-quartz.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,26 @@ During this transition period, the legacy Scheduled Task extension is installed
4747
- **JSON Configuration**: Define your tasks using flexible JSON configuration
4848
- **Component Integration**: Execute CFML components as scheduled tasks with dependency injection
4949

50+
## Version Changes (v1.1.0+)
51+
52+
**Important:** Version 1.1.0 introduces a breaking change from v1.0.x:
53+
54+
| Feature | v1.0.x | v1.1.0+ |
55+
|---------|--------|---------|
56+
| Auto-creates gateway instance | ✅ Yes | ❌ No |
57+
| Manual gateway configuration | ❌ Not needed | ✅ Required |
58+
| Jobs work immediately after install | ✅ Yes | ❌ No (must configure gateway) |
59+
| Existing jobs/configs compatible | N/A | ✅ Yes |
60+
61+
**If upgrading from v1.0:**
62+
Your existing jobs and configurations will continue to work, but you must manually configure a gateway instance (see [Gateway Configuration](#gateway-configuration-required) below).
63+
64+
**Why this change?**
65+
- Provides more control over scheduler initialization
66+
- Allows installing the extension without automatically starting the scheduler
67+
- Better supports configuration-as-code approaches
68+
- Enables cleaner separation of concerns
69+
5070
## Installation
5171

5272
The Quartz Scheduler extension can be installed in two ways:
@@ -67,6 +87,43 @@ In Lucee 6.2, this extension is considered experimental, primarily for testing p
6787

6888
In Lucee 7, it's fully supported as an alternative to the legacy Scheduled Task system.
6989

90+
## Gateway Configuration (Required)
91+
92+
**Important:** Installing the extension does NOT automatically start a Quartz instance. You must manually configure a gateway instance for the scheduler to work.
93+
94+
### Using the Lucee Administrator
95+
96+
1. Navigate to **Server > Event Gateways > Gateway Instances**
97+
2. Click **Create New Instance**
98+
3. Select **Quartz Scheduler** from the gateway type dropdown
99+
4. Set the Instance ID to `quartz-task`
100+
5. Enable "Startup Mode" and set it to **Automatic**
101+
6. Under custom settings, configure:
102+
- `configFile`: `{lucee-config}/quartz/config.json`
103+
- `scheduler`: `scheduler`
104+
7. Click **Save**
105+
106+
### Using .CFConfig.json
107+
108+
Add the following to your `.CFConfig.json`:
109+
110+
```json
111+
{
112+
"gateways": {
113+
"quartz-task": {
114+
"cfcPath": "org.lucee.extension.quartz.QuartzGateway",
115+
"listenerCFCPath": "",
116+
"startupMode": "automatic",
117+
"custom": {
118+
"configFile": "{lucee-config}/quartz/config.json",
119+
"scheduler": "scheduler"
120+
},
121+
"readOnly": "false"
122+
}
123+
}
124+
}
125+
```
126+
70127
## Administration
71128

72129
The Quartz Scheduler extension provides comprehensive administration tools to manage your scheduled tasks:

0 commit comments

Comments
 (0)