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-runtimes.git


The following commit(s) were added to refs/heads/main by this push:
     new e94225dc7f [incubator-kie-issues#2326] Provide correct `Jackson 2` 
integration for all Spring Boot based KIE modules (#4307)
e94225dc7f is described below

commit e94225dc7fba9fa353514626a4256888e5e1996e
Author: Pere Fernández <[email protected]>
AuthorDate: Fri May 29 11:34:11 2026 +0200

    [incubator-kie-issues#2326] Provide correct `Jackson 2` integration for all 
Spring Boot based KIE modules (#4307)
    
    * [incubator-kie-issues#2326] Provide correct Jackson 2 integration for all 
Spring Boot based KIE modules
    - Introduce common SpringBootConfiguration with default configurations 
during codegen
    - Add `org.springframework.boot:spring-boot-jackson2` dependency to 
`kogito-spring-boot-bom`
    
    * - Address review comments
    
    * - Remove mockito from tests
    
    * - Restore implicit dep
    
    * - Fixed test
---
 .../codegen/core/ApplicationConfigGenerator.java   |  2 +-
 .../codegen/manager/GenerateModelHelper.java       | 18 +++++
 .../manager/exceptions/KogitoCodegenException.java | 15 ++--
 .../SpringBootKieConfigurationHelper.java          | 84 ++++++++++++++++++++
 .../SpringBootKieConfigurationTemplate.java        | 19 ++---
 .../resources/kie-spring-boot-config.properties    | 27 +++++++
 .../SpringBootKieConfigurationHelperTest.java      | 92 ++++++++++++++++++++++
 .../kogito/maven/plugin/GenerateModelMojoTest.java |  9 ++-
 springboot/bom/pom.xml                             | 12 ++-
 .../examples/KogitoSpringbootApplication.java      |  2 +-
 10 files changed, 257 insertions(+), 23 deletions(-)

diff --git 
a/kogito-codegen-modules/kogito-codegen-core/src/main/java/org/kie/kogito/codegen/core/ApplicationConfigGenerator.java
 
b/kogito-codegen-modules/kogito-codegen-core/src/main/java/org/kie/kogito/codegen/core/ApplicationConfigGenerator.java
index 5cec2c94a1..35e8c0574c 100644
--- 
a/kogito-codegen-modules/kogito-codegen-core/src/main/java/org/kie/kogito/codegen/core/ApplicationConfigGenerator.java
+++ 
b/kogito-codegen-modules/kogito-codegen-core/src/main/java/org/kie/kogito/codegen/core/ApplicationConfigGenerator.java
@@ -82,7 +82,7 @@ public class ApplicationConfigGenerator {
 
         
generatedFiles.add(generateApplicationConfigDescriptor(configClassNames));
 
-        if (context.hasDI() && context.hasRESTGloballyAvailable()) {
+        if (context.hasDI()) {
             generatedFiles.add(ObjectMapperGenerator.generate(context));
         }
 
diff --git 
a/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/GenerateModelHelper.java
 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/GenerateModelHelper.java
index 6833634995..93ce685cc0 100644
--- 
a/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/GenerateModelHelper.java
+++ 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/GenerateModelHelper.java
@@ -26,9 +26,11 @@ import java.util.Map;
 
 import org.drools.codegen.common.GeneratedFile;
 import org.kie.kogito.codegen.api.context.KogitoBuildContext;
+import org.kie.kogito.codegen.api.context.impl.SpringBootKogitoBuildContext;
 import org.kie.kogito.codegen.core.ApplicationGenerator;
 import org.kie.kogito.codegen.core.utils.ApplicationGeneratorDiscovery;
 import org.kie.kogito.codegen.manager.processes.PersistenceGenerationHelper;
+import 
org.kie.kogito.codegen.manager.springboot.SpringBootKieConfigurationHelper;
 
 import static org.drools.codegen.common.GeneratedFileType.COMPILED_CLASS;
 import static 
org.kie.efesto.common.api.constants.Constants.INDEXFILE_DIRECTORY_PROPERTY;
@@ -115,6 +117,22 @@ public class GenerateModelHelper {
         /* 6. Compile and persist compiled files in target (maven) or gradle 
(build) */
         CompilerHelper.compileAndDump(compileInfo);
 
+        if 
(SpringBootKogitoBuildContext.CONTEXT_NAME.equals(generateModelInfo.kogitoBuildContext().name()))
 {
+            /* 7. Conditionally add Default KIE Configuration for SpringBoot */
+            Map<String, Collection<GeneratedFile>> 
generatedSpringBootConfigFiles = 
SpringBootKieConfigurationHelper.generateKieSpringBootConfiguration(generateModelInfo.kogitoBuildContext);
+
+            compileInfo =
+                    new 
CompilerHelper.CompileInfo(generatedSpringBootConfigFiles.get(SOURCES),
+                            generatedSpringBootConfigFiles.get(RESOURCES), 
generateModelInfo);
+
+            /* 8. Persist the Spring Boot KIE configuration code-generated 
source and resources files in target (maven) or gradle (build) */
+            
GeneratedFileManager.dumpGeneratedFiles(generatedSpringBootConfigFiles.get(SOURCES),
 compileInfo.baseDir().toPath());
+            
GeneratedFileManager.dumpGeneratedFiles(generatedSpringBootConfigFiles.get(RESOURCES),
 compileInfo.baseDir().toPath());
+
+            /* 9. Compile and persist compiled files in target (maven) or 
gradle (build) */
+            CompilerHelper.compileAndDump(compileInfo);
+        }
+
         if (!generateModelInfo.keepSources()) {
             
GeneratedFileManager.deleteFilesByExtension(generateModelInfo.outputDirectory().toPath(),
 "drl");
         }
diff --git 
a/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/exceptions/KogitoCodegenException.java
similarity index 66%
copy from 
springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
copy to 
kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/exceptions/KogitoCodegenException.java
index 8baed787dd..a9c77cac30 100644
--- 
a/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
+++ 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/exceptions/KogitoCodegenException.java
@@ -16,15 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.kie.kogito.examples;
+package org.kie.kogito.codegen.manager.exceptions;
 
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-
-@SpringBootApplication(scanBasePackages = { "org.kie.dmn.kogito.**", 
"org.kie.kogito.**", "http*.**" })
-public class KogitoSpringbootApplication {
+public class KogitoCodegenException extends RuntimeException {
+    public KogitoCodegenException(String message) {
+        super(message);
+    }
 
-    public static void main(String[] args) {
-        SpringApplication.run(KogitoSpringbootApplication.class, args);
+    public KogitoCodegenException(String message, Throwable ex) {
+        super(message, ex);
     }
 }
diff --git 
a/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/springboot/SpringBootKieConfigurationHelper.java
 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/springboot/SpringBootKieConfigurationHelper.java
new file mode 100644
index 0000000000..4c8cc2b8c3
--- /dev/null
+++ 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/java/org/kie/kogito/codegen/manager/springboot/SpringBootKieConfigurationHelper.java
@@ -0,0 +1,84 @@
+/*
+ * 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.codegen.manager.springboot;
+
+import java.io.InputStream;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
+import org.drools.codegen.common.GeneratedFile;
+import org.drools.codegen.common.GeneratedFileType;
+import org.kie.kogito.codegen.api.context.KogitoBuildContext;
+import org.kie.kogito.codegen.api.context.impl.SpringBootKogitoBuildContext;
+import org.kie.kogito.codegen.manager.exceptions.KogitoCodegenException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.github.javaparser.ast.CompilationUnit;
+
+import static com.github.javaparser.StaticJavaParser.parse;
+import static org.kie.kogito.codegen.manager.CompilerHelper.RESOURCES;
+import static org.kie.kogito.codegen.manager.CompilerHelper.SOURCES;
+
+public class SpringBootKieConfigurationHelper {
+
+    private static final Logger LOGGER = 
LoggerFactory.getLogger(SpringBootKieConfigurationHelper.class);
+
+    private static final String KIE_SB_CONFIG_FILE_NAME = 
"kie-spring-boot-config.properties";
+    private static final String SPRING_KIE_SB_CONFIGURATION_CLASS_NAME = 
"SpringBootKieConfiguration";
+
+    private SpringBootKieConfigurationHelper() {
+        // Utility class it should not be initialized
+    }
+
+    public static Map<String, Collection<GeneratedFile>> 
generateKieSpringBootConfiguration(KogitoBuildContext context) {
+        if (!SpringBootKogitoBuildContext.CONTEXT_NAME.equals(context.name())) 
{
+            throw new KogitoCodegenException("Attempting to add Spring Boot 
KIE Configuration outside of a Spring Boot Project");
+        }
+
+        return Map.of(SOURCES, 
List.of(generateKieSpringBootConfigurationClass(context)), RESOURCES, 
List.of(generateKieSpringBootConfigProperties(context)));
+    }
+
+    static GeneratedFile 
generateKieSpringBootConfigurationClass(KogitoBuildContext context) {
+        CompilationUnit compilationUnit = 
parse(context.getClassLoader().getResourceAsStream("class-templates/" + 
SPRING_KIE_SB_CONFIGURATION_CLASS_NAME + "Template.java"));
+        compilationUnit.setPackageDeclaration(context.getPackageName());
+
+        String generatedPath = context.getPackageName().replace(".", "/") + 
"/" + SPRING_KIE_SB_CONFIGURATION_CLASS_NAME + ".java";
+
+        return new GeneratedFile(GeneratedFileType.SOURCE, generatedPath, 
compilationUnit.toString());
+    }
+
+    static GeneratedFile 
generateKieSpringBootConfigProperties(KogitoBuildContext context) {
+        try (InputStream stream = 
context.getClassLoader().getResourceAsStream(KIE_SB_CONFIG_FILE_NAME)) {
+            if (stream == null) {
+                LOGGER.error("Could not find Spring Boot KIE configuration 
properties file");
+                throw new KogitoCodegenException("Could not find Spring Boot 
KIE configuration properties file");
+            }
+
+            return new GeneratedFile(GeneratedFileType.INTERNAL_RESOURCE, 
KIE_SB_CONFIG_FILE_NAME, stream.readAllBytes());
+        } catch (Exception ex) {
+            if (ex instanceof KogitoCodegenException kogitoCodegenException) {
+                throw kogitoCodegenException;
+            }
+            LOGGER.error("Failed to load KIE Spring Boot Config Properties", 
ex);
+            throw new KogitoCodegenException("Failed to load KIE Spring Boot 
Config Properties", ex);
+        }
+    }
+}
diff --git 
a/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/resources/class-templates/SpringBootKieConfigurationTemplate.java
similarity index 63%
copy from 
springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
copy to 
kogito-codegen-modules/kogito-codegen-manager/src/main/resources/class-templates/SpringBootKieConfigurationTemplate.java
index 8baed787dd..1f85512a5c 100644
--- 
a/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
+++ 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/resources/class-templates/SpringBootKieConfigurationTemplate.java
@@ -16,15 +16,16 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.kie.kogito.examples;
+package org.kie.kogito.codegen.manager.springboot;
 
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.SpringBootConfiguration;
+import org.springframework.context.annotation.PropertySource;
+import org.springframework.util.ResourceUtils;
 
-@SpringBootApplication(scanBasePackages = { "org.kie.dmn.kogito.**", 
"org.kie.kogito.**", "http*.**" })
-public class KogitoSpringbootApplication {
-
-    public static void main(String[] args) {
-        SpringApplication.run(KogitoSpringbootApplication.class, args);
-    }
+/**
+ * SpringBootConfiguration to load default configurations for KIE modules.
+ */
+@SpringBootConfiguration
+@PropertySource(ResourceUtils.CLASSPATH_URL_PREFIX + 
"/kie-spring-boot-config.properties")
+public class SpringBootKieConfiguration {
 }
diff --git 
a/kogito-codegen-modules/kogito-codegen-manager/src/main/resources/kie-spring-boot-config.properties
 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/resources/kie-spring-boot-config.properties
new file mode 100644
index 0000000000..d97987298f
--- /dev/null
+++ 
b/kogito-codegen-modules/kogito-codegen-manager/src/main/resources/kie-spring-boot-config.properties
@@ -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.
+#
+
+# Config file to host the common configuration for all the Spring Boot based 
KIE modules.
+# These configurations are loaded by SpringBootKieConfiguration class.
+
+# Required configurations to integrate Jackson 2 in Spring Boot 4. Remove 
together with https://github.com/apache/incubator-kie-drools/issues/6702 
(Jackson 3 migration)
+spring.jackson.use-jackson2-defaults=true
+spring.graphql.rsocket.preferred-json-mapper=jackson2
+spring.http.codecs.preferred-json-mapper=jackson2
+spring.http.converters.preferred-json-mapper=jackson2
\ No newline at end of file
diff --git 
a/kogito-codegen-modules/kogito-codegen-manager/src/test/java/org/kie/kogito/codegen/manager/springboot/SpringBootKieConfigurationHelperTest.java
 
b/kogito-codegen-modules/kogito-codegen-manager/src/test/java/org/kie/kogito/codegen/manager/springboot/SpringBootKieConfigurationHelperTest.java
new file mode 100644
index 0000000000..92d9356265
--- /dev/null
+++ 
b/kogito-codegen-modules/kogito-codegen-manager/src/test/java/org/kie/kogito/codegen/manager/springboot/SpringBootKieConfigurationHelperTest.java
@@ -0,0 +1,92 @@
+/*
+ * 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.codegen.manager.springboot;
+
+import java.nio.file.Path;
+import java.util.Collection;
+import java.util.Map;
+
+import org.drools.codegen.common.GeneratedFile;
+import org.drools.codegen.common.GeneratedFileType;
+import org.junit.jupiter.api.Test;
+import org.kie.kogito.codegen.api.context.KogitoBuildContext;
+import org.kie.kogito.codegen.api.context.impl.JavaKogitoBuildContext;
+import org.kie.kogito.codegen.api.context.impl.QuarkusKogitoBuildContext;
+import org.kie.kogito.codegen.api.context.impl.SpringBootKogitoBuildContext;
+import org.kie.kogito.codegen.manager.exceptions.KogitoCodegenException;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
+import static org.kie.kogito.codegen.manager.CompilerHelper.RESOURCES;
+import static org.kie.kogito.codegen.manager.CompilerHelper.SOURCES;
+import static 
org.kie.kogito.codegen.manager.springboot.SpringBootKieConfigurationHelper.generateKieSpringBootConfiguration;
+
+public class SpringBootKieConfigurationHelperTest {
+
+    @Test
+    public void testCodegenForSpringBootContext() {
+        KogitoBuildContext buildContext = 
SpringBootKogitoBuildContext.builder()
+                .build();
+
+        Map<String, Collection<GeneratedFile>> generatedModelFiles = 
generateKieSpringBootConfiguration(buildContext);
+
+        assertThat(generatedModelFiles)
+                .hasSize(2)
+                .hasEntrySatisfying(SOURCES, generatedFiles -> 
assertThat(generatedFiles).hasSize(1)
+                        
.satisfiesOnlyOnce(this::assertSpringBootKieConfigurationClass))
+                .hasEntrySatisfying(RESOURCES, generatedFiles -> 
assertThat(generatedFiles).hasSize(1)
+                        
.satisfiesOnlyOnce(this::assertSpringBootKieConfigProperties));
+    }
+
+    private void assertSpringBootKieConfigurationClass(GeneratedFile 
generatedFile) {
+        assertThat(generatedFile)
+                .isNotNull()
+                .hasFieldOrPropertyWithValue("type", GeneratedFileType.SOURCE)
+                .hasFieldOrPropertyWithValue("path", 
Path.of("org/kie/kogito/app/SpringBootKieConfiguration.java"))
+                .hasFieldOrProperty("contents");
+    }
+
+    private void assertSpringBootKieConfigProperties(GeneratedFile 
generatedFile) {
+        assertThat(generatedFile)
+                .isNotNull()
+                .hasFieldOrPropertyWithValue("type", 
GeneratedFileType.INTERNAL_RESOURCE)
+                .hasFieldOrPropertyWithValue("path", 
Path.of("kie-spring-boot-config.properties"))
+                .hasFieldOrProperty("contents");
+    }
+
+    @Test
+    public void testCodegenForQuarkusContext() {
+        KogitoBuildContext buildContext = QuarkusKogitoBuildContext.builder()
+                .build();
+
+        assertThatThrownBy(() -> 
generateKieSpringBootConfiguration(buildContext))
+                .isInstanceOf(KogitoCodegenException.class)
+                .hasMessage("Attempting to add Spring Boot KIE Configuration 
outside of a Spring Boot Project");
+    }
+
+    @Test
+    public void testCodegenForJavaContext() {
+        KogitoBuildContext buildContext = JavaKogitoBuildContext.builder()
+                .build();
+
+        assertThatThrownBy(() -> 
generateKieSpringBootConfiguration(buildContext))
+                .isInstanceOf(KogitoCodegenException.class)
+                .hasMessage("Attempting to add Spring Boot KIE Configuration 
outside of a Spring Boot Project");
+    }
+}
diff --git 
a/kogito-maven-plugin/src/test/java/org/kie/kogito/maven/plugin/GenerateModelMojoTest.java
 
b/kogito-maven-plugin/src/test/java/org/kie/kogito/maven/plugin/GenerateModelMojoTest.java
index 3167f8e56c..3f40b7353b 100644
--- 
a/kogito-maven-plugin/src/test/java/org/kie/kogito/maven/plugin/GenerateModelMojoTest.java
+++ 
b/kogito-maven-plugin/src/test/java/org/kie/kogito/maven/plugin/GenerateModelMojoTest.java
@@ -24,17 +24,18 @@ import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.testing.junit5.InjectMojo;
 import org.apache.maven.plugin.testing.junit5.MojoTest;
 import org.junit.jupiter.api.Test;
+import org.kie.kogito.codegen.api.context.impl.JavaKogitoBuildContext;
 import org.kie.kogito.codegen.manager.BuilderManager;
 import org.kie.kogito.codegen.manager.CompilerHelper;
 import org.kie.kogito.codegen.manager.GenerateModelHelper;
 import org.kie.kogito.codegen.manager.processes.PersistenceGenerationHelper;
 import org.kie.kogito.codegen.manager.util.CodeGenManagerUtil;
 import org.mockito.MockedStatic;
+import org.mockito.invocation.InvocationOnMock;
 
 import static org.assertj.core.api.Fail.fail;
 import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.mockStatic;
-import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.*;
 
 @MojoTest
 class GenerateModelMojoTest {
@@ -47,16 +48,18 @@ class GenerateModelMojoTest {
     }
 
     private void commonGenerateModel(GenerateModelMojo mojo) {
-        try (MockedStatic<BuilderManager> builderManagerMockedStatic = 
mockStatic(BuilderManager.class);
+        try (MockedStatic<BuilderManager> builderManagerMockedStatic = 
mockStatic(BuilderManager.class, 
withSettings().defaultAnswer(InvocationOnMock::callRealMethod));
                 MockedStatic<CodeGenManagerUtil> 
codeGenManagerUtilMockedStatic = mockStatic(CodeGenManagerUtil.class);
                 MockedStatic<GenerateModelHelper> 
generateModelHelperMockedStatic = mockStatic(GenerateModelHelper.class);
                 MockedStatic<CompilerHelper> compilerHelperMockedStatic = 
mockStatic(CompilerHelper.class);
                 MockedStatic<PersistenceGenerationHelper> 
persistenceGenerationHelperMockedStatic = 
mockStatic(PersistenceGenerationHelper.class)) {
             builderManagerMockedStatic.when(() -> 
BuilderManager.build(any(BuilderManager.BuildInfo.class))).thenCallRealMethod();
             generateModelHelperMockedStatic.when(() -> 
GenerateModelHelper.generateModel(any(GenerateModelHelper.GenerateModelInfo.class))).thenCallRealMethod();
+            codeGenManagerUtilMockedStatic.when(() -> 
CodeGenManagerUtil.discoverKogitoRuntimeContext(any(), any(), any(), any(), 
any())).thenReturn(JavaKogitoBuildContext.builder().build());
             mojo.execute();
             builderManagerMockedStatic.verify(() -> 
BuilderManager.build(any(BuilderManager.BuildInfo.class)), times(1));
             codeGenManagerUtilMockedStatic.verify(() -> 
CodeGenManagerUtil.setSystemProperties(any()), times(1));
+            codeGenManagerUtilMockedStatic.verify(() -> 
CodeGenManagerUtil.discoverKogitoRuntimeContext(any(), any(), any(), any(), 
any()), times(1));
             generateModelHelperMockedStatic.verify(() -> 
GenerateModelHelper.generateModel(any(GenerateModelHelper.GenerateModelInfo.class)),
 times(1));
             generateModelHelperMockedStatic.verify(() -> 
GenerateModelHelper.generateModelFiles(any(GenerateModelHelper.GenerateModelFilesInfo.class)),
 times(1));
             compilerHelperMockedStatic.verify(() -> 
CompilerHelper.compileAndDump(any(CompilerHelper.CompileInfo.class)), times(2));
diff --git a/springboot/bom/pom.xml b/springboot/bom/pom.xml
index e8440abcb3..6eee362b4d 100644
--- a/springboot/bom/pom.xml
+++ b/springboot/bom/pom.xml
@@ -607,6 +607,12 @@
         <artifactId>spring-boot-starter-web</artifactId>
         <version>${version.org.springframework.boot}</version>
       </dependency>
+      <!-- Jackson 2 Spring configuration — remove together with 
https://github.com/apache/incubator-kie-drools/issues/6702 (Jackson 3 
migration) -->
+      <dependency>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-jackson2</artifactId>
+        <version>${version.org.springframework.boot}</version>
+      </dependency>
     </dependencies>
   </dependencyManagement>
 
@@ -632,7 +638,11 @@
       <artifactId>jcl-over-slf4j</artifactId>
       <scope>runtime</scope>
     </dependency>
-
+    <!-- Jackson 2 Spring configuration — remove together with 
https://github.com/apache/incubator-kie-drools/issues/6702 (Jackson 3 
migration) -->
+    <dependency>
+      <groupId>org.springframework.boot</groupId>
+      <artifactId>spring-boot-jackson2</artifactId>
+    </dependency>
   </dependencies>
   <build>
     <pluginManagement>
diff --git 
a/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
 
b/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
index 8baed787dd..21fad1e3ab 100644
--- 
a/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
+++ 
b/springboot/integration-tests/integration-tests-springboot-norest-it/src/main/java/org/kie/kogito/examples/KogitoSpringbootApplication.java
@@ -21,7 +21,7 @@ package org.kie.kogito.examples;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 
-@SpringBootApplication(scanBasePackages = { "org.kie.dmn.kogito.**", 
"org.kie.kogito.**", "http*.**" })
+@SpringBootApplication(scanBasePackages = { "org.kie.dmn.kogito.**", 
"org.kie.kogito.**", "com.company.**" })
 public class KogitoSpringbootApplication {
 
     public static void main(String[] args) {


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to