This is an automated email from the ASF dual-hosted git repository.
gitgabrio pushed a commit to branch main
in repository
https://gitbox.apache.org/repos/asf/incubator-kie-kogito-examples.git
The following commit(s) were added to refs/heads/main by this push:
new 0073f979f [incubator-kie-issues#1609] Migrate dmn examples to
springboot (#2037)
0073f979f is described below
commit 0073f979f1fb949217d1b19f54162b692d3d3306
Author: Gabriele Cardosi <[email protected]>
AuthorDate: Mon Nov 11 13:39:49 2024 +0100
[incubator-kie-issues#1609] Migrate dmn examples to springboot (#2037)
* [incubator-kie-issues#1609] Migrated dmn-15-springboot-example
* [incubator-kie-issues#1609] Migrated dmn-resource-jar-springboot-example
* [incubator-kie-issues#1609] Remove duplicated module declaration
---------
Co-authored-by: Gabriele-Cardosi <[email protected]>
---
.../dmn-15-quarkus-example/README.md | 2 +-
.../dmn-15-quarkus-example/pom.xml | 4 +-
.../dmn-resource-jar-quarkus-example/README.md | 19 ++--
.../pom.xml | 12 +--
.../src/main/resources/application.properties | 0
.../consumer/example/NativeTrafficViolationIT.java | 0
.../dmn/consumer/example/TrafficViolationTest.java | 0
.../KogitoScenarioJunitActivatorTest.java | 0
.../src/test/resources/TrafficViolationTest.scesim | 0
.../src/test/resources/application.properties | 0
.../pom.xml | 2 +-
.../src/main/resources/Traffic Violation.dmn | 0
.../dmn-resource-jar-quarkus-example/pom.xml | 4 +-
.../dmn-15-springboot-example}/README.md | 66 +++----------
.../dmn-15-springboot-example}/pom.xml | 99 +++++++++----------
.../example/KogitoSpringbootApplication.java | 15 +--
.../src/main}/resources/application.properties | 5 +-
.../dmn-resource-jar-springboot-example/README.md | 105 +++++++++++++++++++++
.../dmn-springboot-consumer-example}/pom.xml | 105 +++++++++++----------
.../example/KogitoSpringbootApplication.java | 15 +--
.../src/main}/resources/application.properties | 5 +-
.../consumer/example/TrafficViolationTest.java | 19 +++-
.../KogitoScenarioJunitActivatorTest.java | 28 ++++++
.../src/test/resources/TrafficViolationTest.scesim | 2 +-
.../dmn-springboot-resource-jar}/pom.xml | 4 +-
.../src/main/resources/Traffic Violation.dmn | 0
.../dmn-resource-jar-springboot-example}/pom.xml | 29 +++---
.../src/main/resources/application.properties | 1 -
kogito-springboot-examples/pom.xml | 4 +
29 files changed, 332 insertions(+), 213 deletions(-)
diff --git a/kogito-quarkus-examples/dmn-15-quarkus-example/README.md
b/kogito-quarkus-examples/dmn-15-quarkus-example/README.md
index bbdc502cc..3f0a6c9bf 100644
--- a/kogito-quarkus-examples/dmn-15-quarkus-example/README.md
+++ b/kogito-quarkus-examples/dmn-15-quarkus-example/README.md
@@ -63,7 +63,7 @@ In this case, the models are contained in the
`org.kie:kie-dmn-test-resources` a
Extracted models could be found under
`target/generated-resources/valid_models.DMNv1_5` directory.
-This example also features the `org.kie.dmn.runtime.typecheck` enviropnment
variable, to enforce constraint checks
+This example also features the `org.kie.dmn.runtime.typecheck` environment
variable, to enforce constraint checks
```xml
<plugin>
diff --git a/kogito-quarkus-examples/dmn-15-quarkus-example/pom.xml
b/kogito-quarkus-examples/dmn-15-quarkus-example/pom.xml
index 143d31f7a..03a1e0ef0 100644
--- a/kogito-quarkus-examples/dmn-15-quarkus-example/pom.xml
+++ b/kogito-quarkus-examples/dmn-15-quarkus-example/pom.xml
@@ -99,7 +99,7 @@
<resource>
<directory>src/main/resources</directory>
</resource>
- <!-- DMN generated resources unpacked from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- DMN generated resources unpacked from
org.kie:kie-dmn-test-resources -->
<resource>
<directory>${project.build.directory}/generated-resources</directory>
</resource>
@@ -136,7 +136,7 @@
</execution>
</executions>
</plugin>
- <!-- Unpack DMN resources from from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- Unpack DMN resources from from org.kie:kie-dmn-test-resources -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
diff --git a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/README.md
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/README.md
index 8a49a1798..50d9dd5d9 100644
--- a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/README.md
+++ b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/README.md
@@ -23,24 +23,25 @@ When using native image compilation, you will also need:
### Compile and Run in Local Dev Mode
```
-cd ./dmn-consumer-example
-mvn clean compile quarkus:dev
+mvn clean install
+cd ./dmn-quarkus-consumer-example
+mvn quarkus:dev
```
-(This requires a previous installation of `dmn-resource-jar`)
+(This requires a previous installation of `dmn-quarkus-resource-jar`)
### Package and Run in JVM mode
```
mvn clean package
-java -jar ./dmn-consumer-example/target/quarkus-app/quarkus-run.jar
+java -jar ./dmn-quarkus-consumer-example/target/quarkus-app/quarkus-run.jar
```
or on Windows
```
mvn clean package
-java -jar .\dmn-consumer-example\target\quarkus-app\quarkus-run.jar
+java -jar .\dmn-quarkus-consumer-example\target\quarkus-app\quarkus-run.jar
```
### Package and Run using Local Native Image
@@ -50,10 +51,10 @@ Note that this requires GRAALVM_HOME to point to a valid
GraalVM installation
mvn clean package -Pnative
```
-To run the generated native executable, generated in
`./dmn-consumer-example/target/`, execute
+To run the generated native executable, generated in
`./dmn-quarkus-consumer-example/target/`, execute
```
-./dmn-consumer-example/target/dmn-consumer-example-runner
+./dmn-quarkus-consumer-example/target/dmn-quarkus-consumer-example-runner
```
Note: This does not yet work on Windows, GraalVM and Quarkus should be rolling
out support for Windows soon.
@@ -74,12 +75,12 @@ Validate the functionality of DMN models before deploying
them into a production
To define test scenarios you need to create a .scesim file inside your project
and link it to the DMN model you want to be tested. Run all Test Scenarios,
executing:
```sh
-cd ./dmn-consumer-example
+cd ./dmn-quarkus-consumer-example
mvn clean test
```
See results in surefire test report `target/surefire-reports`
-(This requires a previous installation of `dmn-resource-jar`)
+(This requires a previous installation of `dmn-quarkus-resource-jar`)
## Example Usage
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/pom.xml
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/pom.xml
similarity index 94%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/pom.xml
copy to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/pom.xml
index 11003d157..7b53ef088 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/pom.xml
+++
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/pom.xml
@@ -9,7 +9,7 @@
<version>999-SNAPSHOT</version>
</parent>
- <artifactId>dmn-consumer-example</artifactId>
+ <artifactId>dmn-quarkus-consumer-example</artifactId>
<properties>
<quarkus-plugin.version>3.8.6</quarkus-plugin.version>
@@ -26,7 +26,7 @@
<dependencies>
<dependency>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-quarkus-resource-jar</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
@@ -48,7 +48,7 @@
<dependencies>
<dependency>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-quarkus-resource-jar</artifactId>
</dependency>
<dependency>
<groupId>org.drools</groupId>
@@ -96,7 +96,7 @@
<resource>
<directory>src/main/resources</directory>
</resource>
- <!-- DMN generated resources unpacked from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- DMN generated resources unpacked from
org.kie.kogito.examples:dmn-quarkus-resource-jar -->
<resource>
<directory>${project.build.directory}/generated-resources</directory>
</resource>
@@ -114,7 +114,7 @@
</execution>
</executions>
</plugin>
- <!-- Unpack DMN resources from from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- Unpack DMN resources from from
org.kie.kogito.examples:dmn-quarkus-resource-jar -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
@@ -130,7 +130,7 @@
<artifactItems>
<artifactItem>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-quarkus-resource-jar</artifactId>
<version>${project.version}</version>
<type>jar</type>
<overWrite>true</overWrite>
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/main/resources/application.properties
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/main/resources/application.properties
similarity index 100%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/main/resources/application.properties
rename to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/main/resources/application.properties
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
similarity index 100%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
copy to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/TrafficViolationTest.java
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/TrafficViolationTest.java
similarity index 100%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/TrafficViolationTest.java
copy to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/TrafficViolationTest.java
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/testscenario/KogitoScenarioJunitActivatorTest.java
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/java/testscenario/KogitoScenarioJunitActivatorTest.java
similarity index 100%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/testscenario/KogitoScenarioJunitActivatorTest.java
rename to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/java/testscenario/KogitoScenarioJunitActivatorTest.java
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/TrafficViolationTest.scesim
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/resources/TrafficViolationTest.scesim
similarity index 100%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/TrafficViolationTest.scesim
copy to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/resources/TrafficViolationTest.scesim
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/resources/application.properties
similarity index 100%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
copy to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-consumer-example/src/test/resources/application.properties
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/pom.xml
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-resource-jar/pom.xml
similarity index 93%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/pom.xml
copy to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-resource-jar/pom.xml
index 5b18fbe23..d7790464c 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/pom.xml
+++
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-resource-jar/pom.xml
@@ -9,7 +9,7 @@
<version>999-SNAPSHOT</version>
</parent>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-quarkus-resource-jar</artifactId>
<properties>
<maven.compiler.source>17</maven.compiler.source>
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/src/main/resources/Traffic
Violation.dmn
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-resource-jar/src/main/resources/Traffic
Violation.dmn
similarity index 100%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/src/main/resources/Traffic
Violation.dmn
copy to
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-quarkus-resource-jar/src/main/resources/Traffic
Violation.dmn
diff --git a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/pom.xml
b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/pom.xml
index 2d6d5cac9..3ea5f5ab7 100644
--- a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/pom.xml
+++ b/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/pom.xml
@@ -42,7 +42,7 @@
</properties>
<packaging>pom</packaging>
<modules>
- <module>dmn-resource-jar</module>
- <module>dmn-consumer-example</module>
+ <module>dmn-quarkus-resource-jar</module>
+ <module>dmn-quarkus-consumer-example</module>
</modules>
</project>
diff --git a/kogito-quarkus-examples/dmn-15-quarkus-example/README.md
b/kogito-springboot-examples/dmn-15-springboot-example/README.md
similarity index 77%
copy from kogito-quarkus-examples/dmn-15-quarkus-example/README.md
copy to kogito-springboot-examples/dmn-15-springboot-example/README.md
index bbdc502cc..6db73ac05 100644
--- a/kogito-quarkus-examples/dmn-15-quarkus-example/README.md
+++ b/kogito-springboot-examples/dmn-15-springboot-example/README.md
@@ -16,7 +16,7 @@
specific language governing permissions and limitations
under the License.
-->
-# DMN 1.5 + Quarkus example
+# DMN 1.5 + Spring Boot example
## Description
@@ -63,7 +63,7 @@ In this case, the models are contained in the
`org.kie:kie-dmn-test-resources` a
Extracted models could be found under
`target/generated-resources/valid_models.DMNv1_5` directory.
-This example also features the `org.kie.dmn.runtime.typecheck` enviropnment
variable, to enforce constraint checks
+This example also features the `org.kie.dmn.runtime.typecheck` environment
variable, to enforce constraint checks
```xml
<plugin>
@@ -96,70 +96,26 @@ You will need:
- Environment variable JAVA_HOME set accordingly
- Maven 3.9.6+ installed
-When using native image compilation, you will also need:
- - [GraalVM 19.3.1](https://github.com/oracle/graal/releases/tag/vm-19.3.1)
installed
- - Environment variable GRAALVM_HOME set accordingly
- - Note that GraalVM native image compilation typically requires other
packages (glibc-devel, zlib-devel and gcc) to be installed too. You also need
'native-image' installed in GraalVM (using 'gu install native-image'). Please
refer to [GraalVM installation
documentation](https://www.graalvm.org/docs/reference-manual/aot-compilation/#prerequisites)
for more details.
+### Compile and Run
-### Compile and Run in Local Dev Mode
-
-```
-mvn clean compile quarkus:dev
-```
-
-### Package and Run in JVM mode
-
-```
-mvn clean package
-java -jar target/quarkus-app/quarkus-run.jar
-```
-
-or on Windows
-
-```
-mvn clean package
-java -jar target\quarkus-app\quarkus-run.jar
-```
-
-### Package and Run using Local Native Image
-Note that this requires GRAALVM_HOME to point to a valid GraalVM installation
-
-```
-mvn clean package -Pnative
-```
-
-To run the generated native executable, generated in `target/`, execute
-
-```
-./target/dmn-quarkus-example-runner
+```sh
+mvn clean compile spring-boot:run
```
-Note: This does not yet work on Windows, GraalVM and Quarkus should be rolling
out support for Windows soon.
-
-## OpenAPI (Swagger) documentation
-[Specification at swagger.io](https://swagger.io/docs/specification/about/)
-
-You can take a look at the [OpenAPI
definition](http://localhost:8080/openapi?format=json) - automatically
generated and included in this service - to determine all available operations
exposed by this service. For easy readability you can visualize the OpenAPI
definition file using a UI tool like for example available [Swagger
UI](https://editor.swagger.io).
-
-In addition, various clients to interact with this service can be easily
generated using this OpenAPI definition.
-
-When running in either Quarkus Development or Native mode, we also leverage
the [Quarkus OpenAPI
extension](https://quarkus.io/guides/openapi-swaggerui#use-swagger-ui-for-development)
that exposes [Swagger UI](http://localhost:8080/q/swagger-ui/) that you can
use to look at available REST endpoints and send test requests.
-
-## Test DMN Model using Maven
-
-Validate the functionality of DMN models before deploying them into a
production environment by defining test scenarios in Test Scenario Editor.
-
-To define test scenarios you need to create a .scesim file inside your project
and link it to the DMN model you want to be tested. Run all Test Scenarios,
executing:
+### Package and Run
```sh
-mvn clean test
+mvn clean package
+java -jar ./target/dmn-15-springboot-example.jar
```
-See results in surefire test report `target/surefire-reports`
## Example Usage
Once the service is up and running, multiple services will be available
+The [Swagger](http://localhost:8080/swagger-ui/index.html) page should show
all the endpoints.
+
+
### POST /AllowedValuesChecksInsideCollection
Demonstrates usage of `allowedValues`constraint (to be used as comparison with
the `ConstraintsChecks`)
diff --git a/kogito-quarkus-examples/dmn-15-quarkus-example/pom.xml
b/kogito-springboot-examples/dmn-15-springboot-example/pom.xml
similarity index 67%
copy from kogito-quarkus-examples/dmn-15-quarkus-example/pom.xml
copy to kogito-springboot-examples/dmn-15-springboot-example/pom.xml
index 143d31f7a..274e46a62 100644
--- a/kogito-quarkus-examples/dmn-15-quarkus-example/pom.xml
+++ b/kogito-springboot-examples/dmn-15-springboot-example/pom.xml
@@ -1,28 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+
<modelVersion>4.0.0</modelVersion>
+
<parent>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>kogito-quarkus-examples</artifactId>
+ <artifactId>kogito-springboot-examples</artifactId>
<version>999-SNAPSHOT</version>
</parent>
-
- <artifactId>dmn-15-quarkus-example</artifactId>
+ <artifactId>dmn-15-springboot-example</artifactId>
<name>Kogito Example :: DMN :: 1.5 Features</name>
+
<properties>
- <quarkus-plugin.version>3.8.6</quarkus-plugin.version>
- <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
- <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
- <quarkus.platform.version>3.8.6</quarkus.platform.version>
- <kogito.bom.group-id>org.kie.kogito</kogito.bom.group-id>
- <kogito.bom.artifact-id>kogito-bom</kogito.bom.artifact-id>
- <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
<version.org.kie.kogito>999-SNAPSHOT</version.org.kie.kogito>
+ <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
<dependency-plugin.version>3.6.1</dependency-plugin.version>
<enable.runtime.typecheck>true</enable.runtime.typecheck>
</properties>
+
<dependencyManagement>
<dependencies>
<dependency>
@@ -32,21 +49,15 @@
<classifier>tests</classifier>
</dependency>
<dependency>
- <groupId>${quarkus.platform.group-id}</groupId>
- <artifactId>${quarkus.platform.artifact-id}</artifactId>
- <version>${quarkus.platform.version}</version>
- <type>pom</type>
- <scope>import</scope>
- </dependency>
- <dependency>
- <groupId>${kogito.bom.group-id}</groupId>
- <artifactId>${kogito.bom.artifact-id}</artifactId>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-spring-boot-bom</artifactId>
<version>${kogito.bom.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
+
<dependencies>
<dependency>
<groupId>org.kie</groupId>
@@ -54,28 +65,17 @@
<classifier>tests</classifier>
</dependency>
<dependency>
- <groupId>org.drools</groupId>
- <artifactId>drools-quarkus-decisions</artifactId>
- </dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-resteasy</artifactId>
- </dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-arc</artifactId>
- </dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-resteasy-jackson</artifactId>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
+
<dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-smallrye-openapi</artifactId>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-decisions-spring-boot-starter</artifactId>
</dependency>
<dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-junit5</artifactId>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
@@ -88,18 +88,15 @@
<artifactId>kogito-scenario-simulation</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-smallrye-health</artifactId>
- </dependency>
</dependencies>
+
<build>
<finalName>${project.artifactId}</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
- <!-- DMN generated resources unpacked from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- DMN generated resources unpacked from
org.kie:kie-dmn-test-resources -->
<resource>
<directory>${project.build.directory}/generated-resources</directory>
</resource>
@@ -125,18 +122,23 @@
</executions>
</plugin>
<plugin>
- <groupId>${quarkus.platform.group-id}</groupId>
- <artifactId>quarkus-maven-plugin</artifactId>
- <version>${quarkus-plugin.version}</version>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-maven-plugin</artifactId>
+ <version>${version.org.kie.kogito}</version>
+ <extensions>true</extensions>
+ </plugin>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
- <goal>build</goal>
+ <goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
- <!-- Unpack DMN resources from from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- Unpack DMN resources from from org.kie:kie-dmn-test-resources -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
@@ -171,4 +173,5 @@
</plugin>
</plugins>
</build>
+
</project>
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
b/kogito-springboot-examples/dmn-15-springboot-example/src/main/java/org/kie/kogito/dmn/springboot/example/KogitoSpringbootApplication.java
similarity index 64%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
copy to
kogito-springboot-examples/dmn-15-springboot-example/src/main/java/org/kie/kogito/dmn/springboot/example/KogitoSpringbootApplication.java
index 1d1a4103c..0ae0f6a44 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
+++
b/kogito-springboot-examples/dmn-15-springboot-example/src/main/java/org/kie/kogito/dmn/springboot/example/KogitoSpringbootApplication.java
@@ -16,12 +16,15 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.kie.kogito.dmn.consumer.example;
+package org.kie.kogito.dmn.springboot.example;
-import io.quarkus.test.junit.QuarkusIntegrationTest;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
-@QuarkusIntegrationTest
-public class NativeTrafficViolationIT extends TrafficViolationTest {
+@SpringBootApplication(scanBasePackages = { "org.kie.kogito.dmn.**",
"org.kie.kogito.app.**", "http**" })
+public class KogitoSpringbootApplication {
- // Execute the same tests but in native mode.
-}
\ No newline at end of file
+ public static void main(String[] args) {
+ SpringApplication.run(KogitoSpringbootApplication.class, args);
+ }
+}
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
b/kogito-springboot-examples/dmn-15-springboot-example/src/main/resources/application.properties
similarity index 95%
copy from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
copy to
kogito-springboot-examples/dmn-15-springboot-example/src/main/resources/application.properties
index a047ea13b..fcbf5c650 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
+++
b/kogito-springboot-examples/dmn-15-springboot-example/src/main/resources/application.properties
@@ -17,5 +17,6 @@
# under the License.
#
-# Quarkus
-quarkus.http.test-port=0
\ No newline at end of file
+# Packaging
+
+server.address=0.0.0.0
\ No newline at end of file
diff --git
a/kogito-springboot-examples/dmn-resource-jar-springboot-example/README.md
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/README.md
new file mode 100644
index 000000000..e6c24ad70
--- /dev/null
+++ b/kogito-springboot-examples/dmn-resource-jar-springboot-example/README.md
@@ -0,0 +1,105 @@
+# DMN + Spring Boot example with model included in different jar
+
+## Description
+
+A simple DMN service to evaluate a model (traffic violation) that is imported
from a different jar.
+
+Demonstrates DMN on Kogito capabilities, including REST interface code
generation.
+
+## Installing and Running
+
+### Prerequisites
+
+You will need:
+- Java 17+ installed
+- Environment variable JAVA_HOME set accordingly
+- Maven 3.9.6+ installed
+
+### Compile and Run
+
+```sh
+mvn clean install
+cd ./dmn-springboot-consumer-example
+mvn spring-boot:run
+```
+
+### Package and Run
+
+```sh
+mvn clean install
+cd ./dmn-springboot-consumer-example
+java -jar ./target/dmn-springboot-consumer-example.jar
+```
+
+## Test DMN Model using Maven
+
+Validate the functionality of DMN models before deploying them into a
production environment by defining test scenarios in Test Scenario Editor.
+
+To define test scenarios you need to create a .scesim file inside your project
and link it to the DMN model you want to be tested. Run all Test Scenarios,
executing:
+
+```sh
+cd ./dmn-springboot-consumer-example
+mvn clean test
+```
+See results in surefire test report `target/surefire-reports`
+
+(This requires a previous installation of `dmn-resource-jar`)
+
+## Example Usage
+
+Once the service is up and running, you can use the following example to
interact with the service.
+
+### POST /Traffic Violation
+
+Returns penalty information from the given inputs -- driver and violation:
+
+Given inputs:
+
+```json
+{
+ "Driver":{"Points":2},
+ "Violation":{
+ "Type":"speed",
+ "Actual Speed":120,
+ "Speed Limit":100
+ }
+}
+```
+
+Curl command (using the JSON object above):
+
+```sh
+curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json'
-d '{"Driver":{"Points":2},"Violation":{"Type":"speed","Actual
Speed":120,"Speed Limit":100}}' http://localhost:8080/Traffic%20Violation
+```
+or on Windows:
+
+```sh
+curl -X POST -H "Accept: application/json" -H "Content-Type: application/json"
-d "{\"Driver\":{\"Points\":2},\"Violation\":{\"Type\":\"speed\",\"Actual
Speed\":120,\"Speed Limit\":100}}" http://localhost:8080/Traffic%20Violation
+```
+
+As response, penalty information is returned.
+
+Example response:
+
+```json
+{
+ "Violation":{
+ "Type":"speed",
+ "Speed Limit":100,
+ "Actual Speed":120
+ },
+ "Driver":{
+ "Points":2
+ },
+ "Fine":{
+ "Points":3,
+ "Amount":500
+ },
+ "Should the driver be suspended?":"No"
+}
+```
+
+The difference from the [dmn-springboot-example](../dmn-springboot-example) is
that, in the current one, the `Traffic Model.dml` is defined in a different jar.
+
+
+
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/pom.xml
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/pom.xml
similarity index 60%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/pom.xml
rename to
kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/pom.xml
index 11003d157..b44afe69e 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/pom.xml
+++
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/pom.xml
@@ -1,78 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+
<modelVersion>4.0.0</modelVersion>
+
<parent>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar-quarkus-example</artifactId>
+ <artifactId>dmn-resource-jar-springboot-example</artifactId>
<version>999-SNAPSHOT</version>
</parent>
- <artifactId>dmn-consumer-example</artifactId>
+ <artifactId>dmn-springboot-consumer-example</artifactId>
<properties>
- <quarkus-plugin.version>3.8.6</quarkus-plugin.version>
- <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
- <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
- <quarkus.platform.version>3.8.6</quarkus.platform.version>
- <kogito.bom.group-id>org.kie.kogito</kogito.bom.group-id>
- <kogito.bom.artifact-id>kogito-bom</kogito.bom.artifact-id>
- <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
<version.org.kie.kogito>999-SNAPSHOT</version.org.kie.kogito>
+ <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
<dependency-plugin.version>3.6.1</dependency-plugin.version>
</properties>
+
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-springboot-resource-jar</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>${quarkus.platform.group-id}</groupId>
- <artifactId>${quarkus.platform.artifact-id}</artifactId>
- <version>${quarkus.platform.version}</version>
- <type>pom</type>
- <scope>import</scope>
- </dependency>
- <dependency>
- <groupId>${kogito.bom.group-id}</groupId>
- <artifactId>${kogito.bom.artifact-id}</artifactId>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-spring-boot-bom</artifactId>
<version>${kogito.bom.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
+
<dependencies>
<dependency>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-springboot-resource-jar</artifactId>
</dependency>
<dependency>
- <groupId>org.drools</groupId>
- <artifactId>drools-quarkus-decisions</artifactId>
- </dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-resteasy</artifactId>
- </dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-arc</artifactId>
- </dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-resteasy-jackson</artifactId>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
+
<dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-smallrye-openapi</artifactId>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-decisions-spring-boot-starter</artifactId>
</dependency>
<dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-junit5</artifactId>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
@@ -85,36 +85,38 @@
<artifactId>kogito-scenario-simulation</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-smallrye-health</artifactId>
- </dependency>
</dependencies>
+
<build>
<finalName>${project.artifactId}</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
- <!-- DMN generated resources unpacked from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- DMN generated resources unpacked from
org.kie.kogito.examples:dmn-springboot-resource-jar -->
<resource>
<directory>${project.build.directory}/generated-resources</directory>
</resource>
</resources>
<plugins>
<plugin>
- <groupId>${quarkus.platform.group-id}</groupId>
- <artifactId>quarkus-maven-plugin</artifactId>
- <version>${quarkus-plugin.version}</version>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-maven-plugin</artifactId>
+ <version>${version.org.kie.kogito}</version>
+ <extensions>true</extensions>
+ </plugin>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
- <goal>build</goal>
+ <goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
- <!-- Unpack DMN resources from from
org.kie.kogito.examples:dmn-resource-jar -->
+ <!-- Unpack DMN resources from from
org.kie.kogito.examples:dmn-springboot-resource-jar -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
@@ -130,7 +132,7 @@
<artifactItems>
<artifactItem>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-springboot-resource-jar</artifactId>
<version>${project.version}</version>
<type>jar</type>
<overWrite>true</overWrite>
@@ -144,4 +146,5 @@
</plugin>
</plugins>
</build>
-</project>
+
+</project>
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/main/java/org/kie/kogito/dmn/springboot/consumer/example/KogitoSpringbootApplication.java
similarity index 64%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
rename to
kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/main/java/org/kie/kogito/dmn/springboot/consumer/example/KogitoSpringbootApplication.java
index 1d1a4103c..49faf5b5e 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/NativeTrafficViolationIT.java
+++
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/main/java/org/kie/kogito/dmn/springboot/consumer/example/KogitoSpringbootApplication.java
@@ -16,12 +16,15 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.kie.kogito.dmn.consumer.example;
+package org.kie.kogito.dmn.springboot.consumer.example;
-import io.quarkus.test.junit.QuarkusIntegrationTest;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
-@QuarkusIntegrationTest
-public class NativeTrafficViolationIT extends TrafficViolationTest {
+@SpringBootApplication(scanBasePackages = { "org.kie.kogito.dmn.**",
"org.kie.kogito.app.**", "http**" })
+public class KogitoSpringbootApplication {
- // Execute the same tests but in native mode.
-}
\ No newline at end of file
+ public static void main(String[] args) {
+ SpringApplication.run(KogitoSpringbootApplication.class, args);
+ }
+}
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/main/resources/application.properties
similarity index 95%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
rename to
kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/main/resources/application.properties
index a047ea13b..fcbf5c650 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/application.properties
+++
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/main/resources/application.properties
@@ -17,5 +17,6 @@
# under the License.
#
-# Quarkus
-quarkus.http.test-port=0
\ No newline at end of file
+# Packaging
+
+server.address=0.0.0.0
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/TrafficViolationTest.java
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/java/org/kie/kogito/dmn/springboot/consumer/example/TrafficViolationTest.java
similarity index 73%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/TrafficViolationTest.java
rename to
kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/java/org/kie/kogito/dmn/springboot/consumer/example/TrafficViolationTest.java
index 612166f5e..920025c1b 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/java/org/kie/kogito/dmn/consumer/example/TrafficViolationTest.java
+++
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/java/org/kie/kogito/dmn/springboot/consumer/example/TrafficViolationTest.java
@@ -16,19 +16,32 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.kie.kogito.dmn.consumer.example;
+package org.kie.kogito.dmn.springboot.consumer.example;
+import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.boot.test.web.server.LocalServerPort;
+import org.springframework.test.annotation.DirtiesContext;
-import io.quarkus.test.junit.QuarkusTest;
+import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import static io.restassured.RestAssured.given;
import static org.hamcrest.Matchers.is;
-@QuarkusTest
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
classes = KogitoSpringbootApplication.class)
+@DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD)
public class TrafficViolationTest {
+ @LocalServerPort
+ private int port;
+
+ @BeforeEach
+ public void setUp() {
+ RestAssured.port = port;
+ }
+
@Test
public void testEvaluateTrafficViolation() {
given()
diff --git
a/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/java/testscenario/KogitoScenarioJunitActivatorTest.java
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/java/testscenario/KogitoScenarioJunitActivatorTest.java
new file mode 100644
index 000000000..7e2f83f2e
--- /dev/null
+++
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/java/testscenario/KogitoScenarioJunitActivatorTest.java
@@ -0,0 +1,28 @@
+package testscenario;/*
+ * Licensed to the Apache Software Foundation (ASF) under
one
+ * or more contributor license agreements. See the NOTICE
file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this
file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in
compliance
+ * with the License. You may obtain a copy of the License
at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in
writing,
+ * software distributed under the License is distributed
on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for
the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/**
+ * KogitoJunitActivator is a custom JUnit runner that enables the execution of
Test Scenario files (*.scesim).
+ * This activator class, when executed, will load all scesim files available
in the project and run them.
+ * Each row of the scenario will generate a test JUnit result.
+ */
[email protected](org.kogito.scenariosimulation.runner.KogitoJunitActivator.class)
+public class KogitoScenarioJunitActivatorTest {
+
+}
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/TrafficViolationTest.scesim
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/resources/TrafficViolationTest.scesim
similarity index 99%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/TrafficViolationTest.scesim
rename to
kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/resources/TrafficViolationTest.scesim
index e98bd57e9..3a9a5d98f 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-consumer-example/src/test/resources/TrafficViolationTest.scesim
+++
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-consumer-example/src/test/resources/TrafficViolationTest.scesim
@@ -753,7 +753,7 @@
</scesimData>
</background>
<settings>
- <dmnFilePath>../../../target/generated-resources/Traffic
Violation.dmn</dmnFilePath>
+ <dmnFilePath>../../main/resources/Traffic Violation.dmn</dmnFilePath>
<type>DMN</type>
<dmnNamespace>https://github.com/kiegroup/drools/kie-dmn/_A4BCA8B8-CF08-433F-93B2-A2598F19ECFF</dmnNamespace>
<dmnName>Traffic Violation</dmnName>
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/pom.xml
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-resource-jar/pom.xml
similarity index 87%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/pom.xml
rename to
kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-resource-jar/pom.xml
index 5b18fbe23..f6b89b322 100644
---
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/pom.xml
+++
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-resource-jar/pom.xml
@@ -5,11 +5,11 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>dmn-resource-jar-quarkus-example</artifactId>
+ <artifactId>dmn-resource-jar-springboot-example</artifactId>
<version>999-SNAPSHOT</version>
</parent>
- <artifactId>dmn-resource-jar</artifactId>
+ <artifactId>dmn-springboot-resource-jar</artifactId>
<properties>
<maven.compiler.source>17</maven.compiler.source>
diff --git
a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/src/main/resources/Traffic
Violation.dmn
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-resource-jar/src/main/resources/Traffic
Violation.dmn
similarity index 100%
rename from
kogito-quarkus-examples/dmn-resource-jar-quarkus-example/dmn-resource-jar/src/main/resources/Traffic
Violation.dmn
rename to
kogito-springboot-examples/dmn-resource-jar-springboot-example/dmn-springboot-resource-jar/src/main/resources/Traffic
Violation.dmn
diff --git a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/pom.xml
b/kogito-springboot-examples/dmn-resource-jar-springboot-example/pom.xml
similarity index 61%
copy from kogito-quarkus-examples/dmn-resource-jar-quarkus-example/pom.xml
copy to kogito-springboot-examples/dmn-resource-jar-springboot-example/pom.xml
index 2d6d5cac9..93f17aa0e 100644
--- a/kogito-quarkus-examples/dmn-resource-jar-quarkus-example/pom.xml
+++ b/kogito-springboot-examples/dmn-resource-jar-springboot-example/pom.xml
@@ -19,30 +19,29 @@
under the License.
-->
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+
<modelVersion>4.0.0</modelVersion>
+
<parent>
<groupId>org.kie.kogito.examples</groupId>
- <artifactId>kogito-quarkus-examples</artifactId>
+ <artifactId>kogito-springboot-examples</artifactId>
<version>999-SNAPSHOT</version>
</parent>
- <artifactId>dmn-resource-jar-quarkus-example</artifactId>
+ <artifactId>dmn-resource-jar-springboot-example</artifactId>
<name>Kogito Example :: DMN :: Resource jar providing model</name>
+ <packaging>pom</packaging>
<properties>
- <quarkus-plugin.version>3.8.6</quarkus-plugin.version>
- <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
- <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
- <quarkus.platform.version>3.8.6</quarkus.platform.version>
- <kogito.bom.group-id>org.kie.kogito</kogito.bom.group-id>
- <kogito.bom.artifact-id>kogito-bom</kogito.bom.artifact-id>
- <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
<version.org.kie.kogito>999-SNAPSHOT</version.org.kie.kogito>
+ <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
</properties>
- <packaging>pom</packaging>
+
<modules>
- <module>dmn-resource-jar</module>
- <module>dmn-consumer-example</module>
+ <module>dmn-springboot-resource-jar</module>
+ <module>dmn-springboot-consumer-example</module>
</modules>
-</project>
+
+</project>
\ No newline at end of file
diff --git
a/kogito-springboot-examples/dmn-springboot-example/src/main/resources/application.properties
b/kogito-springboot-examples/dmn-springboot-example/src/main/resources/application.properties
index 216ad1447..fcbf5c650 100644
---
a/kogito-springboot-examples/dmn-springboot-example/src/main/resources/application.properties
+++
b/kogito-springboot-examples/dmn-springboot-example/src/main/resources/application.properties
@@ -18,6 +18,5 @@
#
# Packaging
-# quarkus.package.type=fast-jar
server.address=0.0.0.0
\ No newline at end of file
diff --git a/kogito-springboot-examples/pom.xml
b/kogito-springboot-examples/pom.xml
index 3becc1edd..9a82da6b9 100644
--- a/kogito-springboot-examples/pom.xml
+++ b/kogito-springboot-examples/pom.xml
@@ -56,10 +56,12 @@
</activation>
<modules>
<module>decisiontable-springboot-example</module>
+ <module>dmn-15-springboot-example</module>
<module>dmn-drools-springboot-metrics</module>
<module>dmn-event-driven-springboot</module>
<module>dmn-listener-springboot</module>
<module>dmn-pmml-springboot-example</module>
+ <module>dmn-resource-jar-springboot-example</module>
<module>dmn-springboot-example</module>
<module>dmn-tracing-springboot</module>
<module>flexible-process-springboot</module>
@@ -103,10 +105,12 @@
</activation>
<modules>
<module>decisiontable-springboot-example</module>
+ <module>dmn-15-springboot-example</module>
<module>dmn-drools-springboot-metrics</module>
<module>dmn-event-driven-springboot</module>
<module>dmn-listener-springboot</module>
<module>dmn-pmml-springboot-example</module>
+ <module>dmn-resource-jar-springboot-example</module>
<module>dmn-springboot-example</module>
<module>dmn-tracing-springboot</module>
<module>flexible-process-springboot</module>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]