This is an automated email from the ASF dual-hosted git repository.
porcelli 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 f2b2c5750 [incubator-kie-issues#1209] Enable scesim for DRL in kogito
(#1921)
f2b2c5750 is described below
commit f2b2c5750dcb3f05c887c3c3a94c611ef45d46f8
Author: Gabriele Cardosi <[email protected]>
AuthorDate: Fri May 17 00:28:25 2024 +0200
[incubator-kie-issues#1209] Enable scesim for DRL in kogito (#1921)
---
kogito-quarkus-examples/pom.xml | 1 +
.../rules-legacy-scesim-quarkus-example/README.md | 135 ++++++++++
.../rules-legacy-scesim-quarkus-example/pom.xml | 134 ++++++++++
.../src/main/java/org/kie/kogito/legacy/Hello.java | 55 ++++
.../java/org/kie/kogito/legacy/HelloEndpoint.java | 48 ++++
.../src/main/resources/META-INF/kmodule.xml | 19 ++
.../src/main/resources/application.properties | 23 ++
.../resources/org/kie/kogito/legacy/HelloRule.drl | 35 +++
.../kie/kogito/legacy/NativeRestQueryTestIT.java | 27 ++
.../java/org/kie/kogito/legacy/RestQueryTest.java | 89 +++++++
.../testscenario/ScenarioJunitActivatorTest.java | 29 ++
.../src/test/resources/application.properties | 25 ++
.../org/kie/kogito/legacy/HelloScesim.scesim | 292 +++++++++++++++++++++
kogito-springboot-examples/pom.xml | 1 +
.../README.md | 107 ++++++++
.../rules-legacy-scesim-springboot-example/pom.xml | 116 ++++++++
.../src/main/java/org/kie/kogito/legacy/Hello.java | 55 ++++
.../java/org/kie/kogito/legacy/HelloEndpoint.java | 48 ++++
.../kogito/legacy/KogitoSpringbootApplication.java | 30 +++
.../src/main/resources/META-INF/kmodule.xml | 19 ++
.../src/main/resources/application.properties | 20 ++
.../resources/org/kie/kogito/legacy/HelloRule.drl | 35 +++
.../java/org/kie/kogito/legacy/RestQueryTest.java | 79 ++++++
.../testscenario/ScenarioJunitActivatorTest.java | 26 ++
.../src/test/resources/HelloScesim.scesim | 292 +++++++++++++++++++++
.../src/test/resources/logback-test.xml | 37 +++
26 files changed, 1777 insertions(+)
diff --git a/kogito-quarkus-examples/pom.xml b/kogito-quarkus-examples/pom.xml
index 06fd0bfde..617bece81 100644
--- a/kogito-quarkus-examples/pom.xml
+++ b/kogito-quarkus-examples/pom.xml
@@ -102,6 +102,7 @@
<module>process-usertasks-with-security-quarkus</module>
<module>rules-incubation-api-quarkus</module>
<module>rules-legacy-quarkus-example</module>
+ <module>rules-legacy-scesim-quarkus-example</module>
<module>rules-quarkus-helloworld</module>
<module>ruleunit-event-driven-quarkus</module>
<module>ruleunit-quarkus-example</module>
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/README.md
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/README.md
new file mode 100644
index 000000000..03a599d8c
--- /dev/null
+++ b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/README.md
@@ -0,0 +1,135 @@
+<!--
+ 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.
+ -->
+# Rules with Legacy API + Quarkus example
+
+## Description
+
+A simple rule service to validate `Hello` fact and testing it using Scenario
Simulation.
+
+An injectable KieRuntimeBuilder is generated, so you can create Drools v7
KieBase and KieSession out of it.
+
+## Installing and Running
+
+### Prerequisites
+
+You will need:
+ - Java 17+ installed
+ - Environment variable JAVA_HOME set accordingly
+ - Maven 3.9.6+ installed
+
+When using native image compilation, you will also need:
+ - [GraalVM
21.1.0](https://github.com/graalvm/graalvm-ce-builds/releases/tag/vm-21.1.0)
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 in Local Dev Mode
+
+```sh
+mvn clean compile quarkus:dev
+```
+
+### Package and Run in JVM mode
+
+```sh
+mvn clean package
+java -jar target/quarkus-app/quarkus-run.jar
+```
+
+or on windows
+
+```sh
+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
+
+```sh
+mvn clean package -Pnative
+```
+
+To run the generated native executable, generated in `target/`, execute
+
+```sh
+./target/rules-legacy-quarkus-example-runner
+```
+
+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/swagger-ui/) that you can use
to look at available REST endpoints and send test requests.
+
+## Example Usage
+
+Once the service is up and running, you can use the following examples to
interact with the service. Note that rather than using the curl commands
below, you can also use the [swagger UI](http://localhost:8080/swagger-ui/) to
send requests.
+
+### POST /find-approved
+
+Returns approved Hello from the given fact:
+
+```sh
+curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json'
-d '{"approved":false, "greeting":"foo"}' http://localhost:8080/find-approved
+```
+or on windows
+
+```sh
+curl -X POST -H "Accept: application/json" -H "Content-Type: application/json"
-d "{\"approved\":false, \"greeting\":\"foo\"}"
http://localhost:8080/find-approved
+```
+
+As response the modified Hello is returned.
+
+Example response:
+
+```json
+{"greeting":"foo","approved":true}
+```
+
+Returns denied Hello from the given fact:
+
+```sh
+curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json'
-d '{"approved":false, "greeting":"bar"}' http://localhost:8080/find-approved
+```
+or on windows
+
+```sh
+curl -X POST -H "Accept: application/json" -H "Content-Type: application/json"
-d "{\"approved\":false, \"greeting\":\"bar\"}"
http://localhost:8080/find-approved
+```
+
+As response the modified Hello is returned.
+
+Example response:
+
+```json
+{"greeting":"bar","approved":false}
+```
+# SCESIM usage
+
+Scesim+rules project created inside Business central should work, with the
following requirements:
+1. use the pom as defined in the current project
+
+## Caveat
+Requires org.drools:drools-xml-support dependency
+For the moment being, "globals" are unsupported
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/pom.xml
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/pom.xml
new file mode 100644
index 000000000..e069ae3a6
--- /dev/null
+++ b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/pom.xml
@@ -0,0 +1,134 @@
+<?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 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">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.kie.kogito.examples</groupId>
+ <artifactId>kogito-quarkus-examples</artifactId>
+ <version>999-SNAPSHOT</version>
+ </parent>
+ <artifactId>rules-legacy-scesim-quarkus-example</artifactId>
+ <name>Kogito Example :: Rules Legacy API HELLO - Quarkus</name>
+ <properties>
+ <quarkus-plugin.version>3.8.4</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.4</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>
+ </properties>
+ <dependencyManagement>
+ <dependencies>
+ <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>
+ <version>${kogito.bom.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-xml-support</artifactId>
+ <version>${version.org.kie.kogito}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-quarkus-rules</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>io.quarkus</groupId>
+ <artifactId>quarkus-resteasy-jackson</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-smallrye-openapi</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-drools</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>io.quarkus</groupId>
+ <artifactId>quarkus-junit5</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>io.rest-assured</groupId>
+ <artifactId>rest-assured</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>io.quarkus</groupId>
+ <artifactId>quarkus-smallrye-health</artifactId>
+ </dependency>
+ <!-- SCESIM -->
+ <dependency>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-scenario-simulation</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-xml-support</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <finalName>${project.artifactId}</finalName>
+ <plugins>
+ <plugin>
+ <groupId>${quarkus.platform.group-id}</groupId>
+ <artifactId>quarkus-maven-plugin</artifactId>
+ <version>${quarkus-plugin.version}</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>build</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/java/org/kie/kogito/legacy/Hello.java
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/java/org/kie/kogito/legacy/Hello.java
new file mode 100644
index 000000000..96fa6be09
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/java/org/kie/kogito/legacy/Hello.java
@@ -0,0 +1,55 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+public class Hello implements java.io.Serializable {
+
+ static final long serialVersionUID = 1L;
+
+ @org.kie.api.definition.type.Label("Greeting")
+ private java.lang.String greeting;
+
+ @org.kie.api.definition.type.Label(value = "Approved")
+ private java.lang.Boolean approved;
+
+ public Hello() {
+ }
+
+ public java.lang.String getGreeting() {
+ return this.greeting;
+ }
+
+ public void setGreeting(java.lang.String greeting) {
+ this.greeting = greeting;
+ }
+
+ public java.lang.Boolean getApproved() {
+ return this.approved;
+ }
+
+ public void setApproved(java.lang.Boolean approved) {
+ this.approved = approved;
+ }
+
+ public Hello(java.lang.String greeting, java.lang.Boolean approved) {
+ this.greeting = greeting;
+ this.approved = approved;
+ }
+
+}
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/java/org/kie/kogito/legacy/HelloEndpoint.java
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/java/org/kie/kogito/legacy/HelloEndpoint.java
new file mode 100644
index 000000000..ef9c200cc
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/java/org/kie/kogito/legacy/HelloEndpoint.java
@@ -0,0 +1,48 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+import org.kie.api.runtime.KieRuntimeBuilder;
+import org.kie.api.runtime.KieSession;
+
+import jakarta.inject.Inject;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
+
+@Path("/find-approved")
+public class HelloEndpoint {
+
+ @Inject
+ KieRuntimeBuilder kieRuntimeBuilder;
+
+ @POST()
+ @Produces(MediaType.APPLICATION_JSON)
+ @Consumes(MediaType.APPLICATION_JSON)
+ public Hello executeQuery(Hello hello) {
+ KieSession session = kieRuntimeBuilder.newKieSession();
+
+ session.insert(hello);
+ session.fireAllRules();
+
+ return hello;
+ }
+}
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/META-INF/kmodule.xml
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/META-INF/kmodule.xml
new file mode 100644
index 000000000..31b098776
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/META-INF/kmodule.xml
@@ -0,0 +1,19 @@
+<!--
+ 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.
+ -->
+<kmodule xmlns="http://www.drools.org/xsd/kmodule"/>
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/application.properties
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/application.properties
new file mode 100644
index 000000000..a76c2a39b
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/application.properties
@@ -0,0 +1,23 @@
+#
+# 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.
+#
+
+# Packaging
+# quarkus.package.type=fast-jar
+
+quarkus.swagger-ui.always-include=true
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/org/kie/kogito/legacy/HelloRule.drl
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/org/kie/kogito/legacy/HelloRule.drl
new file mode 100644
index 000000000..af997ef75
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/main/resources/org/kie/kogito/legacy/HelloRule.drl
@@ -0,0 +1,35 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+import org.kie.kogito.legacy.Hello;
+
+rule HelloApprove when
+ $l: Hello( greeting.equals("foo") )
+then
+ System.out.println("HelloApprove");
+ modify($l) { setApproved(true) };
+end
+
+rule HelloDeny when
+ $l: Hello( greeting != "foo" )
+then
+ System.out.println("HelloDeny");
+ modify($l) { setApproved(false) };
+end
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/org/kie/kogito/legacy/NativeRestQueryTestIT.java
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/org/kie/kogito/legacy/NativeRestQueryTestIT.java
new file mode 100644
index 000000000..fa549686f
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/org/kie/kogito/legacy/NativeRestQueryTestIT.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+import io.quarkus.test.junit.QuarkusIntegrationTest;
+
+@QuarkusIntegrationTest
+public class NativeRestQueryTestIT extends RestQueryTest {
+
+ // Execute the same tests but in native mode.
+}
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/org/kie/kogito/legacy/RestQueryTest.java
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/org/kie/kogito/legacy/RestQueryTest.java
new file mode 100644
index 000000000..d77ae6450
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/org/kie/kogito/legacy/RestQueryTest.java
@@ -0,0 +1,89 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+import org.junit.jupiter.api.Test;
+
+import io.quarkus.test.junit.QuarkusTest;
+import io.restassured.http.ContentType;
+import io.restassured.response.Response;
+import io.restassured.response.ResponseBody;
+import io.restassured.response.ValidatableResponse;
+
+import static io.restassured.RestAssured.given;
+import static org.hamcrest.Matchers.is;
+
+@QuarkusTest
+public class RestQueryTest {
+
+ private static final String JSON_APPROVED_PAYLOAD =
+ "{\n" +
+ " \"approved\":false,\n" +
+ " \"greeting\":\"foo\"\n" +
+ "}";
+ private static final String JSON_DENIED_PAYLOAD =
+ "{\n" +
+ " \"approved\":false,\n" +
+ " \"greeting\":\"bar\"\n" +
+ "}";
+
+ @Test
+ public void testApproved() {
+ Response response = given()
+ .body(JSON_APPROVED_PAYLOAD)
+ .contentType(ContentType.JSON)
+ .when()
+ .post("/find-approved");
+
+ ResponseBody body = response.getBody();
+
+ // To check for sub string presence get the Response body as a String.
+ // Do a String.contains
+ String bodyAsString = body.asString();
+ System.out.println(bodyAsString);
+
+ ValidatableResponse validatableResponse = response
+ .then()
+ .statusCode(200);
+ validatableResponse
+ .body("approved", is(true));
+ }
+
+ @Test
+ public void testDenied() {
+ Response response = given()
+ .body(JSON_DENIED_PAYLOAD)
+ .contentType(ContentType.JSON)
+ .when()
+ .post("/find-approved");
+
+ ResponseBody body = response.getBody();
+
+ // To check for sub string presence get the Response body as a String.
+ // Do a String.contains
+ String bodyAsString = body.asString();
+ System.out.println(bodyAsString);
+
+ ValidatableResponse validatableResponse = response
+ .then()
+ .statusCode(200);
+ validatableResponse
+ .body("approved", is(false));
+ }
+}
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/testscenario/ScenarioJunitActivatorTest.java
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/testscenario/ScenarioJunitActivatorTest.java
new file mode 100644
index 000000000..57d2ebc6c
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/java/testscenario/ScenarioJunitActivatorTest.java
@@ -0,0 +1,29 @@
+/*
+ * 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.
+ */
+package testscenario;
+
+import io.quarkus.test.junit.QuarkusTest;
+
+/**
+ * Do not remove this file
+ */
+@QuarkusTest
[email protected](org.drools.scenariosimulation.backend.runner.ScenarioJunitActivator.class)
+public class ScenarioJunitActivatorTest {
+}
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/resources/application.properties
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/resources/application.properties
new file mode 100644
index 000000000..0841afd17
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/resources/application.properties
@@ -0,0 +1,25 @@
+#
+# 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.
+#
+
+# Quarkus
+quarkus.http.test-port=0
+
+quarkus.log.level=INFO
+quarkus.log.category."org.kie.kogito".level=DEBUG
+quarkus.log.category."org.drools".level=DEBUG
\ No newline at end of file
diff --git
a/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/resources/org/kie/kogito/legacy/HelloScesim.scesim
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/resources/org/kie/kogito/legacy/HelloScesim.scesim
new file mode 100644
index 000000000..ba452b174
--- /dev/null
+++
b/kogito-quarkus-examples/rules-legacy-scesim-quarkus-example/src/test/resources/org/kie/kogito/legacy/HelloScesim.scesim
@@ -0,0 +1,292 @@
+<?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.
+ -->
+<ScenarioSimulationModel version="1.8">
+ <simulation>
+ <scesimModelDescriptor>
+ <factMappings>
+ <FactMapping>
+ <expressionElements/>
+ <expressionIdentifier>
+ <name>Index</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>#</name>
+ <className>java.lang.Integer</className>
+ </factIdentifier>
+ <className>java.lang.Integer</className>
+ <factAlias>#</factAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>70.0</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements/>
+ <expressionIdentifier>
+ <name>Description</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>Scenario description</name>
+ <className>java.lang.String</className>
+ </factIdentifier>
+ <className>java.lang.String</className>
+ <factAlias>Scenario description</factAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>300.0</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements>
+ <ExpressionElement>
+ <step>Hello</step>
+ </ExpressionElement>
+ <ExpressionElement>
+ <step>greeting</step>
+ </ExpressionElement>
+ </expressionElements>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <className>java.lang.String</className>
+ <factAlias>Hello</factAlias>
+ <expressionAlias>greeting</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>337.66666666666663</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements>
+ <ExpressionElement>
+ <step>Hello</step>
+ </ExpressionElement>
+ <ExpressionElement>
+ <step>greeting</step>
+ </ExpressionElement>
+ </expressionElements>
+ <expressionIdentifier>
+ <name>1|2</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <className>java.lang.String</className>
+ <factAlias>Hello</factAlias>
+ <expressionAlias>greeting</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>337.66666666666663</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements>
+ <ExpressionElement>
+ <step>Hello</step>
+ </ExpressionElement>
+ <ExpressionElement>
+ <step>approved</step>
+ </ExpressionElement>
+ </expressionElements>
+ <expressionIdentifier>
+ <name>1715763614877</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <className>java.lang.Boolean</className>
+ <factAlias>Hello</factAlias>
+ <expressionAlias>approved</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>337.66666666666663</columnWidth>
+ </FactMapping>
+ </factMappings>
+ </scesimModelDescriptor>
+ <scesimData>
+ <Scenario>
+ <factMappingValues>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>Scenario description</name>
+ <className>java.lang.String</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Description</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">Approved</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>#</name>
+ <className>java.lang.Integer</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Index</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">1</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <rawValue class="string">foo</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|2</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">foo</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1715763614877</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">true</rawValue>
+ </FactMappingValue>
+ </factMappingValues>
+ </Scenario>
+ <Scenario>
+ <factMappingValues>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>Scenario description</name>
+ <className>java.lang.String</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Description</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">Denied</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>#</name>
+ <className>java.lang.Integer</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Index</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">2</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <rawValue class="string">bar</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|2</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">bar</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1715763614877</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">false</rawValue>
+ </FactMappingValue>
+ </factMappingValues>
+ </Scenario>
+ </scesimData>
+ </simulation>
+ <background>
+ <scesimModelDescriptor>
+ <factMappings>
+ <FactMapping>
+ <expressionElements/>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>Empty</name>
+ <className>java.lang.Void</className>
+ </factIdentifier>
+ <className>java.lang.Void</className>
+ <factAlias>INSTANCE 1</factAlias>
+ <expressionAlias>PROPERTY 1</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>114.0</columnWidth>
+ </FactMapping>
+ </factMappings>
+ </scesimModelDescriptor>
+ <scesimData>
+ <BackgroundData>
+ <factMappingValues>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>Empty</name>
+ <className>java.lang.Void</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ </FactMappingValue>
+ </factMappingValues>
+ </BackgroundData>
+ </scesimData>
+ </background>
+ <settings>
+ <type>RULE</type>
+ <skipFromBuild>false</skipFromBuild>
+ <stateless>false</stateless>
+ </settings>
+ <imports>
+ <imports/>
+ </imports>
+</ScenarioSimulationModel>
\ No newline at end of file
diff --git a/kogito-springboot-examples/pom.xml
b/kogito-springboot-examples/pom.xml
index 7755fbd52..3becc1edd 100644
--- a/kogito-springboot-examples/pom.xml
+++ b/kogito-springboot-examples/pom.xml
@@ -88,6 +88,7 @@
<module>process-usertasks-with-security-oidc-springboot</module>
<module>process-usertasks-with-security-springboot</module>
<module>rules-legacy-springboot-example</module>
+ <module>rules-legacy-scesim-springboot-example</module>
<module>ruleunit-event-driven-springboot</module>
<module>ruleunit-springboot-example</module>
</modules>
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/README.md
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/README.md
new file mode 100644
index 000000000..71b8d7394
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/README.md
@@ -0,0 +1,107 @@
+<!--
+ 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.
+ -->
+# RuleUnit + Spring Boot example
+
+## Description
+
+A simple rule service to validate `Hello` fact and testing it using Scenario
Simulation.
+
+An injectable KieRuntimeBuilder is generated, so you can create Drools v7
KieBase and KieSession out of it.
+
+## Installing and Running
+
+### Prerequisites
+
+You will need:
+ - Java 11+ installed
+ - Environment variable JAVA_HOME set accordingly
+ - Maven 3.8.6+ installed
+
+### Compile and Run
+
+```sh
+mvn clean compile spring-boot:run
+```
+
+### Package and Run
+
+```sh
+mvn clean package
+java -jar target/ruleunit-springboot-example.jar
+```
+
+## 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/v3/api-docs) - 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.
+
+## Example Usage
+
+Once the service is up and running, you can use the following examples to
interact with the service.
+
+### POST /find-approved
+
+Returns approved Hello from the given fact:
+
+```sh
+curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json'
-d '{"approved":false, "greeting":"foo"}' http://localhost:8080/find-approved
+```
+or on windows
+
+```sh
+curl -X POST -H "Accept: application/json" -H "Content-Type: application/json"
-d "{\"approved\":false, \"greeting\":\"foo\"}"
http://localhost:8080/find-approved
+```
+
+As response the modified Hello is returned.
+
+Example response:
+
+```json
+{"greeting":"foo","approved":true}
+```
+
+Returns denied Hello from the given fact:
+
+```sh
+curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json'
-d '{"approved":false, "greeting":"bar"}' http://localhost:8080/find-approved
+```
+or on windows
+
+```sh
+curl -X POST -H "Accept: application/json" -H "Content-Type: application/json"
-d "{\"approved\":false, \"greeting\":\"bar\"}"
http://localhost:8080/find-approved
+```
+
+As response the modified Hello is returned.
+
+Example response:
+
+```json
+{"greeting":"bar","approved":false}
+```
+# SCESIM usage
+
+Scesim+rules project created inside Business central should work, with the
following requirements:
+1. use the pom as defined in the current project
+2. set the `kogito.sources.keep` variable to true
+
+## Caveat
+Requires org.drools:drools-xml-support dependency
+For the moment being, "globals" are unsupported
\ No newline at end of file
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/pom.xml
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/pom.xml
new file mode 100644
index 000000000..6e843823f
--- /dev/null
+++ b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/pom.xml
@@ -0,0 +1,116 @@
+<?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:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ 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-springboot-examples</artifactId>
+ <version>999-SNAPSHOT</version>
+ </parent>
+ <artifactId>rules-legacy-scesim-springboot-example</artifactId>
+ <name>Kogito Example :: Rules Legacy API HELLO - Spring Boot</name>
+
+ <properties>
+ <version.org.kie.kogito>999-SNAPSHOT</version.org.kie.kogito>
+ <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
+ <kogito.sources.keep>true</kogito.sources.keep>
+ </properties>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-spring-boot-bom</artifactId>
+ <version>${kogito.bom.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-xml-support</artifactId>
+ <version>${version.org.kie.kogito}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-actuator</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-rules-spring-boot-starter</artifactId>
+ </dependency>
+
+ <!-- test related -->
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>io.rest-assured</groupId>
+ <artifactId>rest-assured</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <!-- SCESIM -->
+ <dependency>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-scenario-simulation</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.drools</groupId>
+ <artifactId>drools-xml-support</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <finalName>${project.artifactId}</finalName>
+ <plugins>
+ <plugin>
+ <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>repackage</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/Hello.java
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/Hello.java
new file mode 100644
index 000000000..96fa6be09
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/Hello.java
@@ -0,0 +1,55 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+public class Hello implements java.io.Serializable {
+
+ static final long serialVersionUID = 1L;
+
+ @org.kie.api.definition.type.Label("Greeting")
+ private java.lang.String greeting;
+
+ @org.kie.api.definition.type.Label(value = "Approved")
+ private java.lang.Boolean approved;
+
+ public Hello() {
+ }
+
+ public java.lang.String getGreeting() {
+ return this.greeting;
+ }
+
+ public void setGreeting(java.lang.String greeting) {
+ this.greeting = greeting;
+ }
+
+ public java.lang.Boolean getApproved() {
+ return this.approved;
+ }
+
+ public void setApproved(java.lang.Boolean approved) {
+ this.approved = approved;
+ }
+
+ public Hello(java.lang.String greeting, java.lang.Boolean approved) {
+ this.greeting = greeting;
+ this.approved = approved;
+ }
+
+}
\ No newline at end of file
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/HelloEndpoint.java
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/HelloEndpoint.java
new file mode 100644
index 000000000..d46dadb28
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/HelloEndpoint.java
@@ -0,0 +1,48 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+import org.kie.api.runtime.KieRuntimeBuilder;
+import org.kie.api.runtime.KieSession;
+import org.springframework.http.MediaType;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping("/find-approved")
+public class HelloEndpoint {
+
+ private final KieRuntimeBuilder kieRuntimeBuilder;
+
+ public HelloEndpoint(KieRuntimeBuilder kieRuntimeBuilder) {
+ this.kieRuntimeBuilder = kieRuntimeBuilder;
+ }
+
+ @PostMapping(produces = MediaType.APPLICATION_JSON_VALUE, consumes =
MediaType.APPLICATION_JSON_VALUE)
+ public Hello executeQuery(@RequestBody(required = true) Hello hello) {
+ KieSession session = kieRuntimeBuilder.newKieSession();
+
+ session.insert(hello);
+ session.fireAllRules();
+
+ return hello;
+ }
+}
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/KogitoSpringbootApplication.java
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/KogitoSpringbootApplication.java
new file mode 100644
index 000000000..d8e30b0e1
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/java/org/kie/kogito/legacy/KogitoSpringbootApplication.java
@@ -0,0 +1,30 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication(scanBasePackages = { "org.kie.kogito.**",
"org.drools.**" })
+public class KogitoSpringbootApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(KogitoSpringbootApplication.class, args);
+ }
+}
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/META-INF/kmodule.xml
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/META-INF/kmodule.xml
new file mode 100644
index 000000000..9fe3cd73e
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/META-INF/kmodule.xml
@@ -0,0 +1,19 @@
+<!--
+ 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.
+ -->
+<kmodule xmlns="http://www.drools.org/xsd/kmodule" />
\ No newline at end of file
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/application.properties
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/application.properties
new file mode 100644
index 000000000..4e8da841c
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/application.properties
@@ -0,0 +1,20 @@
+#
+# 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.
+#
+
+server.address=0.0.0.0
\ No newline at end of file
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/org/kie/kogito/legacy/HelloRule.drl
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/org/kie/kogito/legacy/HelloRule.drl
new file mode 100644
index 000000000..af997ef75
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/main/resources/org/kie/kogito/legacy/HelloRule.drl
@@ -0,0 +1,35 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+import org.kie.kogito.legacy.Hello;
+
+rule HelloApprove when
+ $l: Hello( greeting.equals("foo") )
+then
+ System.out.println("HelloApprove");
+ modify($l) { setApproved(true) };
+end
+
+rule HelloDeny when
+ $l: Hello( greeting != "foo" )
+then
+ System.out.println("HelloDeny");
+ modify($l) { setApproved(false) };
+end
\ No newline at end of file
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/java/org/kie/kogito/legacy/RestQueryTest.java
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/java/org/kie/kogito/legacy/RestQueryTest.java
new file mode 100644
index 000000000..fd590db5e
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/java/org/kie/kogito/legacy/RestQueryTest.java
@@ -0,0 +1,79 @@
+/*
+ * 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.
+ */
+package org.kie.kogito.legacy;
+
+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.restassured.RestAssured;
+import io.restassured.http.ContentType;
+
+import static io.restassured.RestAssured.given;
+import static org.hamcrest.core.Is.is;
+
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
classes = KogitoSpringbootApplication.class)
+@DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_CLASS)
+public class RestQueryTest {
+
+ @LocalServerPort
+ private int port;
+
+ @BeforeEach
+ public void setUp() {
+ RestAssured.port = port;
+ }
+
+ private static final String JSON_APPROVED_PAYLOAD =
+ "{\n" +
+ " \"approved\":false,\n" +
+ " \"greeting\":\"foo\"\n" +
+ "}";
+ private static final String JSON_DENIED_PAYLOAD =
+ "{\n" +
+ " \"approved\":false,\n" +
+ " \"greeting\":\"bar\"\n" +
+ "}";
+
+ @Test
+ public void testApproved() {
+ given()
+ .body(JSON_APPROVED_PAYLOAD)
+ .contentType(ContentType.JSON)
+ .when()
+ .post("/find-approved")
+ .then()
+ .statusCode(200)
+ .body("approved", is(true));
+ }
+
+ @Test
+ public void testDenied() {
+ given()
+ .body(JSON_DENIED_PAYLOAD)
+ .contentType(ContentType.JSON)
+ .when()
+ .post("/find-approved")
+ .then()
+ .statusCode(200)
+ .body("approved", is(false));
+ }
+}
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/java/testscenario/ScenarioJunitActivatorTest.java
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/java/testscenario/ScenarioJunitActivatorTest.java
new file mode 100644
index 000000000..13bd96d81
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/java/testscenario/ScenarioJunitActivatorTest.java
@@ -0,0 +1,26 @@
+/*
+ * 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.
+ */
+package testscenario;
+
+/**
+ * Do not remove this file
+ */
[email protected](org.drools.scenariosimulation.backend.runner.ScenarioJunitActivator.class)
+public class ScenarioJunitActivatorTest {
+}
\ No newline at end of file
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/resources/HelloScesim.scesim
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/resources/HelloScesim.scesim
new file mode 100644
index 000000000..ba452b174
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/resources/HelloScesim.scesim
@@ -0,0 +1,292 @@
+<?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.
+ -->
+<ScenarioSimulationModel version="1.8">
+ <simulation>
+ <scesimModelDescriptor>
+ <factMappings>
+ <FactMapping>
+ <expressionElements/>
+ <expressionIdentifier>
+ <name>Index</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>#</name>
+ <className>java.lang.Integer</className>
+ </factIdentifier>
+ <className>java.lang.Integer</className>
+ <factAlias>#</factAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>70.0</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements/>
+ <expressionIdentifier>
+ <name>Description</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>Scenario description</name>
+ <className>java.lang.String</className>
+ </factIdentifier>
+ <className>java.lang.String</className>
+ <factAlias>Scenario description</factAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>300.0</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements>
+ <ExpressionElement>
+ <step>Hello</step>
+ </ExpressionElement>
+ <ExpressionElement>
+ <step>greeting</step>
+ </ExpressionElement>
+ </expressionElements>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <className>java.lang.String</className>
+ <factAlias>Hello</factAlias>
+ <expressionAlias>greeting</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>337.66666666666663</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements>
+ <ExpressionElement>
+ <step>Hello</step>
+ </ExpressionElement>
+ <ExpressionElement>
+ <step>greeting</step>
+ </ExpressionElement>
+ </expressionElements>
+ <expressionIdentifier>
+ <name>1|2</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <className>java.lang.String</className>
+ <factAlias>Hello</factAlias>
+ <expressionAlias>greeting</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>337.66666666666663</columnWidth>
+ </FactMapping>
+ <FactMapping>
+ <expressionElements>
+ <ExpressionElement>
+ <step>Hello</step>
+ </ExpressionElement>
+ <ExpressionElement>
+ <step>approved</step>
+ </ExpressionElement>
+ </expressionElements>
+ <expressionIdentifier>
+ <name>1715763614877</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <className>java.lang.Boolean</className>
+ <factAlias>Hello</factAlias>
+ <expressionAlias>approved</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>337.66666666666663</columnWidth>
+ </FactMapping>
+ </factMappings>
+ </scesimModelDescriptor>
+ <scesimData>
+ <Scenario>
+ <factMappingValues>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>Scenario description</name>
+ <className>java.lang.String</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Description</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">Approved</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>#</name>
+ <className>java.lang.Integer</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Index</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">1</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <rawValue class="string">foo</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|2</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">foo</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1715763614877</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">true</rawValue>
+ </FactMappingValue>
+ </factMappingValues>
+ </Scenario>
+ <Scenario>
+ <factMappingValues>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>Scenario description</name>
+ <className>java.lang.String</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Description</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">Denied</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>#</name>
+ <className>java.lang.Integer</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>Index</name>
+ <type>OTHER</type>
+ </expressionIdentifier>
+ <rawValue class="string">2</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <rawValue class="string">bar</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|2</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">bar</rawValue>
+ </FactMappingValue>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>1|1</name>
+ <className>org.kie.kogito.legacy.Hello</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1715763614877</name>
+ <type>EXPECT</type>
+ </expressionIdentifier>
+ <rawValue class="string">false</rawValue>
+ </FactMappingValue>
+ </factMappingValues>
+ </Scenario>
+ </scesimData>
+ </simulation>
+ <background>
+ <scesimModelDescriptor>
+ <factMappings>
+ <FactMapping>
+ <expressionElements/>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ <factIdentifier>
+ <name>Empty</name>
+ <className>java.lang.Void</className>
+ </factIdentifier>
+ <className>java.lang.Void</className>
+ <factAlias>INSTANCE 1</factAlias>
+ <expressionAlias>PROPERTY 1</expressionAlias>
+ <factMappingValueType>NOT_EXPRESSION</factMappingValueType>
+ <columnWidth>114.0</columnWidth>
+ </FactMapping>
+ </factMappings>
+ </scesimModelDescriptor>
+ <scesimData>
+ <BackgroundData>
+ <factMappingValues>
+ <FactMappingValue>
+ <factIdentifier>
+ <name>Empty</name>
+ <className>java.lang.Void</className>
+ </factIdentifier>
+ <expressionIdentifier>
+ <name>1|1</name>
+ <type>GIVEN</type>
+ </expressionIdentifier>
+ </FactMappingValue>
+ </factMappingValues>
+ </BackgroundData>
+ </scesimData>
+ </background>
+ <settings>
+ <type>RULE</type>
+ <skipFromBuild>false</skipFromBuild>
+ <stateless>false</stateless>
+ </settings>
+ <imports>
+ <imports/>
+ </imports>
+</ScenarioSimulationModel>
\ No newline at end of file
diff --git
a/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/resources/logback-test.xml
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/resources/logback-test.xml
new file mode 100644
index 000000000..4ca6ba0f5
--- /dev/null
+++
b/kogito-springboot-examples/rules-legacy-scesim-springboot-example/src/test/resources/logback-test.xml
@@ -0,0 +1,37 @@
+<?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.
+
+-->
+<configuration>
+
+ <appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>%date{HH:mm:ss.SSS} [%thread] %-5level %class{36}.%method:%line
- %msg%n</pattern>
+ </encoder>
+ </appender>
+
+ <logger name="org.kie.kogito" level="DEBUG" />
+ <logger name="org.drools" level="DEBUG" />
+
+ <root level="info">
+ <appender-ref ref="consoleAppender" />
+ </root>
+
+</configuration>
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]