<commit_before>== Quick development start

The project is ready to start the application in
https://tbroyer.github.io/gwt-maven-plugin/codeserver-mojo.html[GWT SuperDevMode].
In SuperDevMode, the client side of the application is served by GWT's CodeServer, which can quickly
recompile changes made in the source files in your IDE and serve the updated client upon browser refresh.
On the other hand, the webapp is deployed to an AppServer running in a separate process and only provides
the server side of the application.
This way it is possible to reduce the refresh time during development either by just refreshing browser window
to get client code changes or by just redeploying the webapp (without recompiling the client) to see backend changes.

Additionally, the GWT Maven plugin is configured to produce source maps which allow to browse the Java source files,
set breakpoints and inspect variables using the Developer tools in Chrome.

=== Running SuperDevMode from command line

==== 1. Build the whole project

```bash
$ mvn clean install -Dgwt.skipCompilation
```

We can skip GWT compilation because it will be done anyway by the CodeServer
when accessing the application from browser for the first time.

==== 2. Launch CodeServer

```bash
$ mvn gwt:codeserver -pl optaplanner-wb-ui -am
```

The process will keep running in the foreground and thus will occupy the terminal window.

==== 3. Launch backend

It's recommended to do this in a different terminal window.

```bash
$ cd optaplanner-wb-webapp
$ mvn wildfly:start wildfly:deploy-only
```

==== 4. Open the WebApp

Open http://localhost:8080/optaplanner-wb/ in your web browser.
Enter `admin:admin` credentials.
Users, their passwords and roles are configured by the `PicketLinkDefaultUsers` server bean.

==== 5. Shut down
Shut down CodeServer with `SIGTERM` (`Ctrl+Z`).

Shut down WildFly by running
```
$ mvn wildfly:shutdown
```

=== Running SuperDevMode from IntelliJ IDEA

You need to create two separate Run configurations for CodeServer and webapp deployment.

==== Add CodeServer Run configuration

1. Open the *Run/Debug Configurations* window by choosing *Run > Edit Configurations...*

2. Click *Add New Configuration* (green plus button), select *Maven*.

3. Fill the following fields in *Parameters* tab:

  * Working directory: `/absolute/path/to/optaplanner-wb`
  * Command line: `gwt:codeserver -pl optaplanner-wb-ui -am`

==== Add AppServer Run configuration

1. Open the *Run/Debug Configurations* window by choosing *Run > Edit Configurations...*

2. Click *Add New Configuration* (green plus button), select *JBoss Server > Local*.

3. Choose a name, e.g. OptaPlanner WB WildFly.

4. Click *Configure...* to create a new Application server.

5. Click `+` and set *JBoss Home* to point to
   `/absolute/path/optaplanner-wb/optaplanner-wb-webapp/target/wildfly-11.0.0.Final`

6. Click the *Fix...* button next to the "No artifacts marked for deployment" warning
   and select `optaplanner-wb-webapp exploded`.
+
IMPORTANT: After adding the deployment, remove all build steps that were added to the Before launch phase.
It is necessary to skip the build to avoid overwriting the index page "injected" by CodeServer.<commit_msg>[AF-1555]: Upgrade WF11 to WF14 (#304)<commit_after>== Quick development start

The project is ready to start the application in
https://tbroyer.github.io/gwt-maven-plugin/codeserver-mojo.html[GWT SuperDevMode].
In SuperDevMode, the client side of the application is served by GWT's CodeServer, which can quickly
recompile changes made in the source files in your IDE and serve the updated client upon browser refresh.
On the other hand, the webapp is deployed to an AppServer running in a separate process and only provides
the server side of the application.
This way it is possible to reduce the refresh time during development either by just refreshing browser window
to get client code changes or by just redeploying the webapp (without recompiling the client) to see backend changes.

Additionally, the GWT Maven plugin is configured to produce source maps which allow to browse the Java source files,
set breakpoints and inspect variables using the Developer tools in Chrome.

=== Running SuperDevMode from command line

==== 1. Build the whole project

```bash
$ mvn clean install -Dgwt.skipCompilation
```

We can skip GWT compilation because it will be done anyway by the CodeServer
when accessing the application from browser for the first time.

==== 2. Launch CodeServer

```bash
$ mvn gwt:codeserver -pl optaplanner-wb-ui -am
```

The process will keep running in the foreground and thus will occupy the terminal window.

==== 3. Launch backend

It's recommended to do this in a different terminal window.

```bash
$ cd optaplanner-wb-webapp
$ mvn wildfly:start wildfly:deploy-only
```

==== 4. Open the WebApp

Open http://localhost:8080/optaplanner-wb/ in your web browser.
Enter `admin:admin` credentials.
Users, their passwords and roles are configured by the `PicketLinkDefaultUsers` server bean.

==== 5. Shut down
Shut down CodeServer with `SIGTERM` (`Ctrl+Z`).

Shut down WildFly by running
```
$ mvn wildfly:shutdown
```

=== Running SuperDevMode from IntelliJ IDEA

You need to create two separate Run configurations for CodeServer and webapp deployment.

==== Add CodeServer Run configuration

1. Open the *Run/Debug Configurations* window by choosing *Run > Edit Configurations...*

2. Click *Add New Configuration* (green plus button), select *Maven*.

3. Fill the following fields in *Parameters* tab:

  * Working directory: `/absolute/path/to/optaplanner-wb`
  * Command line: `gwt:codeserver -pl optaplanner-wb-ui -am`

==== Add AppServer Run configuration

1. Open the *Run/Debug Configurations* window by choosing *Run > Edit Configurations...*

2. Click *Add New Configuration* (green plus button), select *JBoss Server > Local*.

3. Choose a name, e.g. OptaPlanner WB WildFly.

4. Click *Configure...* to create a new Application server.

5. Click `+` and set *JBoss Home* to point to
   `/absolute/path/optaplanner-wb/optaplanner-wb-webapp/target/wildfly-14.0.1.Final`

6. Click the *Fix...* button next to the "No artifacts marked for deployment" warning
   and select `optaplanner-wb-webapp exploded`.
+
IMPORTANT: After adding the deployment, remove all build steps that were added to the Before launch phase.
It is necessary to skip the build to avoid overwriting the index page "injected" by CodeServer.
{'fraction_non_alphanumeric': 0.07999381092371964, 'fraction_numerical': 0.00850997988550209, 'mean_word_length': 4.42737195633921, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2672382', 'n_tokens_mistral': 1882, 'n_tokens_neox': 1762, 'n_words': 862}