Any implementation to load kjar from the file system without using Maven

1,381 views
Skip to first unread message

ritupa...@gmail.com

unread,
Sep 8, 2020, 10:29:36 PM9/8/20
to jBPM Usage
I am using jBPM in my Springboot microservice application using the "jbpm-spring-boot-starter-basic" as build dependency. However in this approach the the deployment service implementation requires the kjar to be present in a Maven repository following the gav naming convention

String[] gav = deploymentId.split(":");
KModuleDeploymentUnit deploymentUnit = new KModuleDeploymentUnit(gav[0], gav[1], gav[2]);
deploymentService.deploy(deploymentUnit);

Is is possible to read the kjar file from the file system without using Maven? The need is when I would deploy the Springboot microservice application in the cloud I will have to create a maven repository before hand.

Abhijit Humbe

unread,
Sep 9, 2020, 1:02:34 AM9/9/20
to ritupa...@gmail.com, jBPM Usage
If you dont want to use maven then you have to load it from classpath. But I will recomment you to go with maven approach. Loading multiple kjar into different kieBase from classpath is bit difficult.
Abhijit Humbe


--
You received this message because you are subscribed to the Google Groups "jBPM Usage" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-usage+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-usage/d986f4f9-6ad2-46c2-8392-0d3d8ce02dddn%40googlegroups.com.

Rituparno Pal

unread,
Sep 9, 2020, 1:28:50 AM9/9/20
to Abhijit Humbe, jBPM Usage
Hi Abhijit

Thanks for the reply. For me it will be only kjar with only one
kieBase. Issue with the maven approach is on the Cloud I will have to
maintain a maven repository structure. By classpath do you mean using
direct Runtime Manager API which is comparatively tedious to use in a
Springboot application?
--
Thanks & Regards
Rituparno Pal

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 9, 2020, 1:35:02 AM9/9/20
to Rituparno Pal, Abhijit Humbe, jBPM Usage
Yes there is a way starting from 7.43+

https://issues.redhat.com/browse/JBPM-9178 Immutable SpringBoot Deployment

add this in the spring boot properties:

kieserver.classPathContainer=true

specifying the containers to be deployed

@Configuration
public class KieContainerDeployer {

@Bean
public KieContainerResource evaluation_v1() {
KieContainerResource container = new
KieContainerResource("evaluation_v1", new ReleaseId("com.myspace",
"Evaluation", "1.0.0-SNAPSHOT"), STARTED);
container.setConfigItems(Arrays.asList(new
KieServerConfigItem(KieServerConstants.PCFG_RUNTIME_STRATEGY,
"PER_PROCESS_INSTANCE", "String")));
return container;
}

@Bean
public KieContainerResource evaluation_v2() {
KieContainerResource container = new
KieContainerResource("evaluation_v2", new ReleaseId("com.myspace",
"Evaluation", "2.0.0-SNAPSHOT"), STARTED);
container.setConfigItems(Arrays.asList(new
KieServerConfigItem(KieServerConstants.PCFG_RUNTIME_STRATEGY,
"PER_PROCESS_INSTANCE", "String")));
return container;
}

}

Maven plugin in the service (including kjar multiple version). This
will resolve the necesary artifacts to run the kjar.

<build>
<plugins>
<plugin>
<groupId>org.kie</groupId>
<artifactId>kie-maven-plugin</artifactId>
<version>${version.org.kie}</version>
<executions>
<execution>
<id>copy</id>
<phase>prepare-package</phase>
<goals>
<goal>package-dependencies-kjar</goal>
</goals>
</execution>
</executions>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.myspace</groupId>
<artifactId>Evaluation</artifactId>
<version>1.0.0-SNAPSHOT</version>
</artifactItem>
<artifactItem>
<groupId>com.myspace</groupId>
<artifactId>Evaluation</artifactId>
<version>2.0.0-SNAPSHOT</version>
</artifactItem>
</artifactItems>
</configuration>
</plugin>
<plugins>
<build>

for 7.44+ there will two other ways to specify a deployment

declaratively in the application.properties like this:

kieserver.deployments[0].alias=evaluation_v1
kieserver.deployments[0].containerId=evaluation_v1
kieserver.deployments[0].artifactId=Evaluation
kieserver.deployments[0].groupId=com.myspace
kieserver.deployments[0].version=1.0.0-SNAPSHOT

kieserver.deployments[1].alias=evaluation_v2
kieserver.deployments[1].containerId=evaluation_v2
kieserver.deployments[1].artifactId=Evaluation
kieserver.deployments[1].groupId=com.myspace
kieserver.deployments[1].version=2.0.0-SNAPSHOT

if you don't want to specify a the container alias it can be used
another property for autoscanning deployments within spring boot

kieserver.classPathContainer=true
kieserver.autoScanDeployments=true

El mié., 9 sept. 2020 a las 7:28, Rituparno Pal
(<ritupa...@gmail.com>) escribió:
> To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-usage/CAFmEJJ4o%2Bp8oO94cFT0to8YVm%3DuQQ6-gdPUPmf%2B8h8Mpsxutcg%40mail.gmail.com.



--
Saludos, Enrique González Martínez :)

ritupa...@gmail.com

unread,
Sep 9, 2020, 2:15:56 AM9/9/20
to jBPM Usage
Hi Enrique

Thank you for the detailed reply. I was using jBPM version 7.36.0 and 7.44+ declarative option looks really cool. However do we have to add the "kie-server-spring-boot-starter" dependency to use it or "jbpm-spring-boot-starter-basic" is good enough?

Regards
Rituparno

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 9, 2020, 2:46:48 AM9/9/20
to ritupa...@gmail.com, jBPM Usage
More or less. This is a project example / that commit is a project example.

https://github.com/elguardian/springboot-kjar-multiversion/blob/53736c1752b52c74d40d83c44aed45c874a75e74/business-application-service/pom.xml


With this dependency you should be able to

<dependency>
<groupId>org.kie</groupId>
<artifactId>kie-server-spring-boot-starter</artifactId>
<version>${version.org.kie}</version>
</dependency>


Keep in mind that because the feature allows multiple versions of the
same kjar it is not possible to use normal maven dependency. We needed
to allocate the kjars and dependencies
somewhere else inside the spring boot jar and isolate them with
classloading; therefore the configuration
https://github.com/elguardian/springboot-kjar-multiversion/blob/53736c1752b52c74d40d83c44aed45c874a75e74/business-application-service/pom.xml#L51-L78
is mandatory no matter how you specify the deployment. You will have three ways:

1) creating the kie containers yourself
2) declarative
3) or just autoscaning

for 7.43
https://github.com/elguardian/springboot-kjar-multiversion/blob/53736c1752b52c74d40d83c44aed45c874a75e74/
that is an example how to do it.


El mié., 9 sept. 2020 a las 8:15, ritupa...@gmail.com
> To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-usage/dc23c70d-0d60-4dba-b039-db4158bd0c8fn%40googlegroups.com.

Rituparno Pal

unread,
Sep 9, 2020, 6:59:50 AM9/9/20
to ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Hi Enrique

I tried to build the codebase present in Github. However its complaining that
Plugin org.kie:kie-maven-plugin:7.43.0-SNAPSHOT or one of its
dependencies could not be resolved: Could not find artifact
org.kie:kie-maven-plugin:jar:7.43.0-SNAPSHOT

Am I missing something?

Abhijit Humbe

unread,
Sep 9, 2020, 9:35:35 AM9/9/20
to Rituparno Pal, ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Make sure you have below maven repo configured in settings.xml or in pom.xml of proj


Abhijit Humbe


Rituparno Pal

unread,
Sep 9, 2020, 9:36:24 AM9/9/20
to Abhijit Humbe, ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Thanks, I'll check it out. 

Rituparno Pal

unread,
Sep 11, 2020, 12:08:18 AM9/11/20
to Abhijit Humbe, ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Hi Enrique, Abhijit

I tried out all the three options. The common issue is that the jbpm
engine always refers to a maven repository to read the pom file,
though the kjar is loaded from the KIE-INF folder. I tried in a box
which doesn't have any maven repository. It starts looking for the pom
in the remote repositories and fails.

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 11, 2020, 1:16:24 AM9/11/20
to Rituparno Pal, Abhijit Humbe, jBPM Usage
Can you provide the logs of spring boot including the error giving you? 

Rituparno Pal

unread,
Sep 11, 2020, 2:10:57 AM9/11/20
to ENRIQUE GONZALEZ MARTINEZ, Abhijit Humbe, jBPM Usage
Hi Enrique

Configuration used-
kieserver.classPathContainer=true
kieserver.autoScanDeployments=true

Please find the logs below -

06:00:59.147 [main] INFO o.k.s.s.i.ContainerManager - About to
install containers on kie server
KieServer{id='problem-management-service'name='problem-management-service'version='7.43.0.Final'location='http://localhost:8081/rest/server'}:

06:00:59.148 [main] INFO o.k.s.s.i.KieServerImpl - KieServer
problem-management-service is ready to receive requests
06:00:59.191 [main] INFO o.k.s.s.a.KieServerAutoConfiguration -
KieServer (id problem-management-service) started successfully
06:00:59.979 [main] INFO c.o.a.p.PMSpringBootApplication - Started
PMSpringBootApplication in 20.59 seconds (JVM running for 22.395)

I call the deploymentService here and get the below result-

06:01:48.900 [http-nio-0.0.0.0-8081-exec-1] WARN
o.a.m.i.e.MavenSettings - Environment variable M2_HOME is not set
06:02:12.204 [http-nio-0.0.0.0-8081-exec-1] WARN
o.a.m.i.MavenRepository - Unable to resolve artifact:
com.mycompany.microservices:problem-management-process:0.0.1-SNAPSHOT
06:02:12.204 [http-nio-0.0.0.0-8081-exec-1] WARN
o.a.m.i.MavenRepository - Unable to resolve artifact:
com.mycompany.microservices:problem-management-process:0.0.1-SNAPSHOT
06:02:32.658 [http-nio-0.0.0.0-8081-exec-1] WARN
o.a.m.i.MavenRepository - Unable to resolve artifact:
com.mycompany.microservices:problem-management-process:0.0.1-SNAPSHOT
06:02:52.683 [http-nio-0.0.0.0-8081-exec-1] WARN
o.a.m.i.MavenRepository - Unable to resolve artifact:
com.mycompany.microservices:problem-management-process:pom:0.0.1-SNAPSHOT
06:02:52.686 [http-nio-0.0.0.0-8081-exec-1] WARN
o.j.k.s.i.KModuleDeploymentService - Unexpected error while deploying
unit com.mycompany.microservices:problem-management-process:0.0.1-SNAPSHOT
java.lang.RuntimeException: Cannot find KieModule:
com.mycompany.microservices:problem-management-process:0.0.1-SNAPSHOT
at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:191)
at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:177)
at org.jbpm.kie.services.impl.KModuleDeploymentService.deploy(KModuleDeploymentService.java:148)
at com.mycompany.pm.service.PMProcessService.deployProcessDefinitions(PMProcessService.java:81)
at com.mycompany.pm.service.PMProcessService$$FastClassBySpringCGLIB$$dadbbe4d.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:687)
at com.mycompany.pm.service.PMProcessService$$EnhancerBySpringCGLIB$$f9df14d4.deployProcessDefinitions(<generated>)
at com.mycompany.pm.controller.PMProcessController.deployProcessDefinitions(PMProcessController.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:879)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:158)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:204)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92)
at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1594)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)

However in my local machine which contains a m2 folder is present it works fine.

On Fri, 11 Sep 2020 at 10:46, ENRIQUE GONZALEZ MARTINEZ

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 11, 2020, 2:18:36 AM9/11/20
to Rituparno Pal, Abhijit Humbe, jBPM Usage
Works fine because u have a local repo.
Please share your pom. Remember that autoscan is only available in 7.44 no 7.43

Rituparno Pal

unread,
Sep 11, 2020, 2:32:32 AM9/11/20
to ENRIQUE GONZALEZ MARTINEZ, Abhijit Humbe, jBPM Usage
Hi Enrique

Yeah, understood that. Let's focus on the approach based on the jBPM
7.43.0.Final version only. I've included the pom file and the
KieContainerDeployer class. In this case I don't have to call the
deployment service separately and the same exception occurs while
starting the Spring boot.

Relevant application.properties entries-
cxf.path=/rest
#kie server config
kieserver.serverId=problem-management-service
kieserver.serverName=problem-management-service
kieserver.location=http://localhost:8081/rest/server
kieserver.classPathContainer=true
#kieserver.controllers=

On Fri, 11 Sep 2020 at 11:48, ENRIQUE GONZALEZ MARTINEZ
pom.xml
KieContainerDeployer.java

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 11, 2020, 6:00:44 AM9/11/20
to Rituparno Pal, Abhijit Humbe, jBPM Usage
strange.... It looks like you are not getting the class path container
to work. This is my full test with 7.43

Key lines here:

classPathContainer activated you need to check for this line.
2020-09-11 11:58:26.622 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Selected startup strategy
InmutableContainerStartupStrategy - deploys once during startup the
containers selected by the controller

Found the deployment in the kjar:
2020-09-11 11:58:32.088 INFO 47626 --- [ main]
o.d.c.k.b.impl.ClasspathKieProject : Found kmodule:
jar:file:/home/egonzale/Descargas/springboot-kjar-multiversion/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/classes/KIE-INF/lib/Evaluation-1.0.0-SNAPSHOT.jar!/META-INF/kmodule.xml

[egonzale@localhost business-application-service]$ java -jar
target/business-application-service-1.0-SNAPSHOT.jar
_ ______ ______ ___ ___ ______ _
___ _ _ _ _
(_)| ___ \| ___ \| \/ | | ___ \ (_)
/ _ \ | |(_) | | (_)
_ | |_/ /| |_/ /| . . | | |_/ / _ _ ___ _ _ __ ___ ___
___ / /_\ \ _ __ _ __ | | _ ___ __ _ | |_ _ ___ _ __
| || ___ \| __/ | |\/| | | ___ \| | | |/ __|| || '_ \ / _ \/ __|/
__| | _ || '_ \ | '_ \ | || | / __|/ _` || __|| | / _ \ | '_ \
| || |_/ /| | | | | | | |_/ /| |_| |\__ \| || | | || __/\__
\\__ \ | | | || |_) || |_) || || || (__| (_| || |_ | || (_) || | | |
| |\____/ \_| \_| |_/ \____/ \__,_||___/|_||_| |_|
\___||___/|___/ \_| |_/| .__/ | .__/ |_||_| \___|\__,_| \__||_| \___/
|_| |_|
_/ |
| | | |
|__/
|_| |_|

business-application-service :: v.1.0-SNAPSHOT


2020-09-11 11:58:09.190 INFO 47626 --- [ main]
com.company.service.ServerApplication : Starting ServerApplication
v1.0-SNAPSHOT on localhost.localdomain with PID 47626
(/home/egonzale/Descargas/springboot-kjar-multiversion/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar
started by egonzale in
/home/egonzale/Descargas/springboot-kjar-multiversion/business-application-service)
2020-09-11 11:58:09.200 INFO 47626 --- [ main]
com.company.service.ServerApplication : No active profile set,
falling back to default profiles: default
2020-09-11 11:58:13.490 INFO 47626 --- [ main]
o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with
port(s): 8090 (http)
2020-09-11 11:58:13.515 INFO 47626 --- [ main]
o.apache.catalina.core.StandardService : Starting service [Tomcat]
2020-09-11 11:58:13.515 INFO 47626 --- [ main]
org.apache.catalina.core.StandardEngine : Starting Servlet engine:
[Apache Tomcat/9.0.33]
2020-09-11 11:58:13.630 INFO 47626 --- [ main]
o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring
embedded WebApplicationContext
2020-09-11 11:58:13.631 INFO 47626 --- [ main]
o.s.web.context.ContextLoader : Root WebApplicationContext:
initialization completed in 4266 ms
2020-09-11 11:58:14.302 WARN 47626 --- [ main]
com.arjuna.ats.common : ARJUNA048002: Could not
find configuration file, URL was: null
2020-09-11 11:58:14.460 INFO 47626 --- [ main]
o.d.p.api.TransactionManagerFactory : Using
org.kie.spring.persistence.KieSpringTransactionManagerFactory@3cc1435c
2020-09-11 11:58:14.522 INFO 47626 --- [ main]
com.arjuna.ats.jbossatx : ARJUNA032010: JBossTS
Recovery Service (tag: 92f28891fd5f29d0381da214d4f3a2917f46e301) -
JBoss Inc.
2020-09-11 11:58:14.594 INFO 47626 --- [ main]
com.arjuna.ats.jbossatx : ARJUNA032013: Starting
transaction recovery manager
2020-09-11 11:58:14.882 INFO 47626 --- [ main]
o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing
PersistenceUnitInfo [name: org.jbpm.domain]
2020-09-11 11:58:15.161 INFO 47626 --- [ main]
org.hibernate.Version : HHH000412: Hibernate ORM
core version 5.4.12.Final
2020-09-11 11:58:15.768 INFO 47626 --- [ main]
o.hibernate.annotations.common.Version : HCANN000001: Hibernate
Commons Annotations {5.1.0.Final}
2020-09-11 11:58:17.646 INFO 47626 --- [ main]
org.hibernate.dialect.Dialect : HHH000400: Using dialect:
org.hibernate.dialect.H2Dialect
2020-09-11 11:58:19.235 INFO 47626 --- [ main]
org.hibernate.orm.beans : HHH10005002: No explicit
CDI BeanManager reference was passed to Hibernate, but CDI is
available on the Hibernate ClassLoader.
2020-09-11 11:58:21.798 INFO 47626 --- [ main]
o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using
JtaPlatform implementation:
[org.hibernate.engine.transaction.jta.platform.internal.JBossStandAloneJtaPlatform]
2020-09-11 11:58:23.087 WARN 47626 --- [ main]
o.h.dialect.function.TemplateRenderer : HHH000174: Function
template anticipated 4 arguments, but 1 arguments encountered
2020-09-11 11:58:23.088 WARN 47626 --- [ main]
o.h.dialect.function.TemplateRenderer : HHH000174: Function
template anticipated 4 arguments, but 1 arguments encountered
2020-09-11 11:58:23.278 INFO 47626 --- [ main]
j.LocalContainerEntityManagerFactoryBean : Initialized JPA
EntityManagerFactory for persistence unit 'org.jbpm.domain'
2020-09-11 11:58:23.480 WARN 47626 --- [ main]
JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is
enabled by default. Therefore, database queries may be performed
during view rendering. Explicitly configure spring.jpa.open-in-view to
disable this warning
2020-09-11 11:58:23.873 INFO 47626 --- [ main]
o.s.s.web.DefaultSecurityFilterChain : Creating filter chain: any
request, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@7026b7ee,
org.springframework.security.web.context.SecurityContextPersistenceFilter@74aa9c72,
org.springframework.security.web.header.HeaderWriterFilter@373f7450,
org.springframework.web.filter.CorsFilter@2d23faef,
org.springframework.security.web.authentication.logout.LogoutFilter@2a32fb6,
org.springframework.security.web.authentication.www.BasicAuthenticationFilter@36fcf6c0,
org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4b7c4456,
org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5533dc72,
org.springframework.security.web.authentication.AnonymousAuthenticationFilter@7cb8437d,
org.springframework.security.web.session.SessionManagementFilter@5ff90645,
org.springframework.security.web.access.ExceptionTranslationFilter@1a891add,
org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6dd82486]
2020-09-11 11:58:24.081 INFO 47626 --- [ main]
o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing
ExecutorService 'applicationTaskExecutor'
2020-09-11 11:58:24.269 INFO 47626 --- [ main]
o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page: class
path resource [static/index.html]
2020-09-11 11:58:25.460 INFO 47626 --- [ main]
com.arjuna.ats.arjuna : ARJUNA012170:
TransactionStatusManager started on port 33671 and host 127.0.0.1 with
service com.arjuna.ats.arjuna.recovery.ActionStatusService
2020-09-11 11:58:26.567 INFO 47626 --- [ main]
o.k.s.s.a.KieServerAutoConfiguration : KieServer (id
business-application-service (name business-application-service))
started initialization process
2020-09-11 11:58:26.620 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Starting server in
'DEVELOPMENT' mode.
2020-09-11 11:58:26.622 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Selected startup strategy
InmutableContainerStartupStrategy - deploys once during startup the
containers selected by the controller
2020-09-11 11:58:26.625 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Configured
'InMemoryKieServerStateRepository' server state repository
2020-09-11 11:58:26.660 INFO 47626 --- [ main]
o.k.s.s.impl.storage.KieServerState : Added default controller
located at http://localhost:8080/business-central/rest/controller
2020-09-11 11:58:26.664 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Server Default Extension
has been successfully registered as server extension
2020-09-11 11:58:26.667 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Drools KIE Server extension
has been successfully registered as server extension
2020-09-11 11:58:26.752 INFO 47626 --- [ main]
o.k.s.api.marshalling.MarshallerFactory : Marshaller extensions init
2020-09-11 11:58:26.787 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : jBPM KIE Server extension
has been successfully registered as server extension
2020-09-11 11:58:26.792 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Case-Mgmt KIE Server
extension has been successfully registered as server extension
2020-09-11 11:58:27.171 INFO 47626 --- [ main]
o.k.s.s.j.u.f.r.BootstrapFormRenderer : Boostrap Form renderer
templates loaded successfully.
2020-09-11 11:58:27.178 INFO 47626 --- [ main]
o.k.s.s.j.u.f.r.PatternflyFormRenderer : patternfly Form renderer
templates loaded successfully.
2020-09-11 11:58:27.186 INFO 47626 --- [ main]
o.k.s.s.j.u.f.r.PatternflyFormRenderer : workbench Form renderer
templates loaded successfully.
2020-09-11 11:58:27.188 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : jBPM-UI KIE Server
extension has been successfully registered as server extension
2020-09-11 11:58:27.189 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : DMN KIE Server extension
has been successfully registered as server extension
2020-09-11 11:58:27.194 INFO 47626 --- [ main]
o.k.s.s.impl.policy.PolicyManager : Registered
KeepLatestContainerOnlyPolicy{interval=0 ms} policy under name
KeepLatestOnly
2020-09-11 11:58:27.195 INFO 47626 --- [ main]
o.k.s.s.impl.policy.PolicyManager : Policy manager started
successfully, activated policies are []
2020-09-11 11:58:27.200 INFO 47626 --- [ main]
o.k.s.services.impl.ContainerManager : About to install containers
on kie server
KieServer{id='business-application-service'name='business-application-service'version='7.43.0.Final'location='http://localhost:8090/rest/server'}:
KieContainerResource [containerId=test,
releaseId=com.myspace:Evaluation:1.0.0-SNAPSHOT,
resolvedReleaseId=null, status=STARTED]
2020-09-11 11:58:32.088 INFO 47626 --- [ main]
o.d.c.k.b.impl.ClasspathKieProject : Found kmodule:
jar:file:/home/egonzale/Descargas/springboot-kjar-multiversion/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/classes/KIE-INF/lib/Evaluation-1.0.0-SNAPSHOT.jar!/META-INF/kmodule.xml
2020-09-11 11:58:32.206 INFO 47626 --- [ main]
o.d.c.k.b.impl.ClasspathKieProject : Found kmodule:
jar:file:/home/egonzale/Descargas/springboot-kjar-multiversion/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/lib/kie-pmml-7.43.0.Final.jar!/META-INF/kmodule.xml
2020-09-11 11:58:36.649 INFO 47626 --- [ main]
o.j.r.m.impl.AbstractRuntimeManager :
PerProcessInstanceRuntimeManager is created for test
2020-09-11 11:58:37.291 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : Container test (for release
id com.myspace:Evaluation:1.0.0-SNAPSHOT) successfully started
2020-09-11 11:58:37.299 INFO 47626 --- [ main]
o.k.server.services.impl.KieServerImpl : KieServer
business-application-service is ready to receive requests
2020-09-11 11:58:37.374 INFO 47626 --- [ main]
o.k.s.s.a.KieServerAutoConfiguration : KieServer (id
business-application-service) started successfully
2020-09-11 11:58:37.862 INFO 47626 --- [ main]
org.apache.cxf.endpoint.ServerImpl : Setting the server's
publish address to be /
2020-09-11 11:58:38.187 INFO 47626 --- [ main]
o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s):
8090 (http) with context path ''
2020-09-11 11:58:38.194 INFO 47626 --- [ main]
com.company.service.ServerApplication : Started ServerApplication
in 29.977 seconds (JVM running for 31.212)

El vie., 11 sept. 2020 a las 8:32, Rituparno Pal

Rituparno Pal

unread,
Sep 11, 2020, 6:08:11 AM9/11/20
to ENRIQUE GONZALEZ MARTINEZ, Abhijit Humbe, jBPM Usage
Do I have to keep the kmodule.xml in the service project as well?

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 11, 2020, 6:10:57 AM9/11/20
to Rituparno Pal, Abhijit Humbe, jBPM Usage
It should not matter but it is important to check that the kjar has the kmodule.xml otherwise it wont be recognise as a deployment. That is a limitation of the class path container.
Also is important to check if you see those lines before mentioned. 

Rituparno Pal

unread,
Sep 11, 2020, 6:20:02 AM9/11/20
to ENRIQUE GONZALEZ MARTINEZ, Abhijit Humbe, jBPM Usage
yeah, kjar project has the kmodule.xml. However I'm facing the same issue in the code you shared (unable to load the kjar from the classpath). I'm building on Windows 10 platform (local machine) and trying to run the jar on a Linux machine.

Rituparno Pal

unread,
Sep 11, 2020, 10:22:09 AM9/11/20
to ENRIQUE GONZALEZ MARTINEZ, Abhijit Humbe, jBPM Usage
Hi Enrique

I tried running the codebase you pointed earlier-

https://github.com/elguardian/springboot-kjar-multiversion/tree/53736c1752b52c74d40d83c44aed45c874a75e74

In my Windows 10 environment (which contains a .m2 folder) I've
getting the following logs which seems to be correct-

2020-09-11 19:46:19.843 INFO 22272 --- [ main]
o.k.s.services.impl.ContainerManager : About to install containers
on kie server
KieServer{id='business-application-service'name='business-application-service'version='7.43.0.Final'location='http://localhost:8081/rest/server'}:
KieContainerResource [containerId=evaluation_v1,
releaseId=com.myspace:Evaluation:1.0.0-SNAPSHOT,
resolvedReleaseId=null, status=STARTED]
KieContainerResource [containerId=evaluation_v2,
releaseId=com.myspace:Evaluation:2.0.0-SNAPSHOT,
resolvedReleaseId=null, status=STARTED]
2020-09-11 19:46:21.248 WARN 22272 --- [ main]
o.a.m.integration.InJarArtifactResolver : Maven pom not found in path
null
2020-09-11 19:46:21.329 WARN 22272 --- [ main]
o.a.m.i.embedder.MavenSettings : Environment variable
M2_HOME is not set
2020-09-11 19:46:23.673 INFO 22272 --- [ main]
o.d.c.k.b.impl.ClasspathKieProject : Found kmodule:
jar:file:/C:/Users/ritpal/.m2/repository/com/myspace/Evaluation/1.0.0-SNAPSHOT/Evaluation-1.0.0-SNAPSHOT.jar!/META-INF/kmodule.xml
2020-09-11 19:46:23.743 INFO 22272 --- [ main]
o.d.c.k.b.impl.ClasspathKieProject : Found kmodule:
jar:file:/C:/Rituparno/Work/Oracle/ACS%20Engg/Ticketing%20Old%20Portal/springboot-kjar-multiversion/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/lib/kie-pmml-7.43.0.Final.jar!/META-INF/kmodule.xml
2020-09-11 19:46:25.408 WARN 22272 --- [ main]
o.k.s.s.drools.DroolsKieServerExtension : Unable to create instance
of type com.company.model.EmployeeEvaluation due to
com.company.model.EmployeeEvaluation
2020-09-11 19:46:26.513 INFO 22272 --- [ main]
o.j.r.m.impl.AbstractRuntimeManager :
PerProcessInstanceRuntimeManager is created for evaluation_v1
2020-09-11 19:46:26.893 INFO 22272 --- [ main]
o.k.server.services.impl.KieServerImpl : Container evaluation_v1
(for release id com.myspace:Evaluation:1.0.0-SNAPSHOT) successfully
started
2020-09-11 19:46:28.203 WARN 22272 --- [ main]
o.a.m.integration.InJarArtifactResolver : Maven pom not found in path
null
2020-09-11 19:46:28.328 INFO 22272 --- [ main]
o.d.c.k.b.impl.ClasspathKieProject : Found kmodule:
jar:file:/C:/Users/ritpal/.m2/repository/com/myspace/Evaluation/2.0.0-SNAPSHOT/Evaluation-2.0.0-SNAPSHOT.jar!/META-INF/kmodule.xml
2020-09-11 19:46:28.336 INFO 22272 --- [ main]
o.d.c.k.b.impl.ClasspathKieProject : Found kmodule:
jar:file:/C:/Rituparno/Work/Oracle/ACS%20Engg/Ticketing%20Old%20Portal/springboot-kjar-multiversion/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/lib/kie-pmml-7.43.0.Final.jar!/META-INF/kmodule.xml
2020-09-11 19:46:28.441 WARN 22272 --- [ main]
o.k.s.s.drools.DroolsKieServerExtension : Unable to create instance
of type com.company.model.EmployeeEvaluation due to
com.company.model.EmployeeEvaluation
2020-09-11 19:46:29.278 INFO 22272 --- [ main]
o.j.r.m.impl.AbstractRuntimeManager :
PerProcessInstanceRuntimeManager is created for evaluation_v2
2020-09-11 19:46:29.303 INFO 22272 --- [ main]
o.k.server.services.impl.KieServerImpl : Container evaluation_v2
(for release id com.myspace:Evaluation:2.0.0-SNAPSHOT) successfully
started

But copying the same jar in a Unix machine (which doesn't contain a
Maven repo, ) I'm getting the following error

2020-09-11 13:20:58.063 INFO 10196 --- [ main]
o.k.s.services.impl.ContainerManager : About to install containers
on kie server
KieServer{id='business-application-service'name='business-application-service'version='7.43.0.Final'location='http://localhost:8081/rest/server'}:
KieContainerResource [containerId=evaluation_v1,
releaseId=com.myspace:Evaluation:1.0.0-SNAPSHOT,
resolvedReleaseId=null, status=STARTED]
KieContainerResource [containerId=evaluation_v2,
releaseId=com.myspace:Evaluation:2.0.0-SNAPSHOT,
resolvedReleaseId=null, status=STARTED]
2020-09-11 13:20:58.929 WARN 10196 --- [ main]
o.a.m.i.embedder.MavenSettings : Environment variable
M2_HOME is not set
2020-09-11 13:21:13.657 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : I/O exception
(java.net.NoRouteToHostException) caught when connecting to
{s}->https://repo.maven.apache.org:443: No route to host (Host
unreachable)
2020-09-11 13:21:13.657 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : Retrying connect to
{s}->https://repo.maven.apache.org:443
2020-09-11 13:21:20.672 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : I/O exception
(java.net.NoRouteToHostException) caught when connecting to
{s}->https://repo.maven.apache.org:443: No route to host (Host
unreachable)
2020-09-11 13:21:20.673 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : Retrying connect to
{s}->https://repo.maven.apache.org:443
2020-09-11 13:21:20.678 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : I/O exception
(java.net.NoRouteToHostException) caught when connecting to
{s}->https://repo.maven.apache.org:443: No route to host (Host
unreachable)
2020-09-11 13:21:20.678 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : Retrying connect to
{s}->https://repo.maven.apache.org:443
[WARNING] Failure to transfer
com.company:business-application-model:1.0-SNAPSHOT/maven-metadata.xml
from https://repository.jboss.org/nexus/content/groups/public/ was
cached in the local repository, resolution will not be reattempted
until the update interval of jboss-public-repository-group has elapsed
or updates are forced. Original error: Could not transfer metadata
com.company:business-application-model:1.0-SNAPSHOT/maven-metadata.xml
from/to jboss-public-repository-group
(https://repository.jboss.org/nexus/content/groups/public/): Connect
to repository.jboss.org:443 timed out
[WARNING] Failure to transfer
com.company:business-application-model:1.0-SNAPSHOT/maven-metadata.xml
from https://repository.jboss.org/nexus/content/groups/public/ was
cached in the local repository, resolution will not be reattempted
until the update interval of jboss-public-repository-group has elapsed
or updates are forced. Original error: Could not transfer metadata
com.company:business-application-model:1.0-SNAPSHOT/maven-metadata.xml
from/to jboss-public-repository-group
(https://repository.jboss.org/nexus/content/groups/public/): Connect
to repository.jboss.org:443 timed out
2020-09-11 13:21:28.027 ERROR 10196 --- [ main]
o.a.m.i.embedder.MavenEmbedder : Unable to build
MavenEmbedder

org.codehaus.plexus.component.repository.exception.ComponentLookupException:
java.util.NoSuchElementException
role: org.apache.maven.execution.MavenExecutionRequestPopulator
roleHint:
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:267)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:255)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:249)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
at org.appformer.maven.integration.embedder.PlexusComponentProvider.lookup(PlexusComponentProvider.java:42)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenEmbedder.buildMavenExecutionRequest(MavenEmbedder.java:142)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenEmbedder.init(MavenEmbedder.java:104)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:99)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:91)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenEmbedder.<init>(MavenEmbedder.java:85)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:70)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.loadMavenProject(MavenProjectLoader.java:179)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.Aether.getAether(Aether.java:76)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.MavenRepository.getMavenRepository(MavenRepository.java:95)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenEmbedder.tryRemoveLocalArtifact(MavenEmbedder.java:342)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenEmbedder.readProject(MavenEmbedder.java:319)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:91)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:84)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.buildPomParser(InJarArtifactResolver.java:110)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.init(InJarArtifactResolver.java:63)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.<init>(InJarArtifactResolver.java:54)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.ArtifactResolver.getResolverFor(ArtifactResolver.java:48)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.scanner.KieInJarModuleMetaDataImpl.<init>(KieInJarModuleMetaDataImpl.java:82)
[kie-ci-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.scanner.KieModuleMetaData$Factory.newInJarKieModuleMetaData(KieModuleMetaData.java:78)
[kie-ci-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.ImmutableSpringBootKieServerImpl.buildKieModuleMetadata(ImmutableSpringBootKieServerImpl.java:53)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.createContainer(KieServerImpl.java:282)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainersSync(ContainerManager.java:49)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainers(ContainerManager.java:35)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.InmutableContainerStartupStrategy.startup(InmutableContainerStartupStrategy.java:43)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.init(KieServerImpl.java:191)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.ImmutableSpringBootKieServerImpl.init(ImmutableSpringBootKieServerImpl.java:88)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration.kieServer(KieServerAutoConfiguration.java:108)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a.CGLIB$kieServer$3(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a$$FastClassBySpringCGLIB$$47e08cbc.invoke(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
[spring-core-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a.kieServer(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.8.0_261]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_261]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_261]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:636)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1338)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:557)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
~[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:882)
~[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878)
~[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
~[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at com.company.service.ServerApplication.main(ServerApplication.java:10)
~[classes!/:1.0-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.8.0_261]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_261]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_261]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:51)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
Caused by: java.util.NoSuchElementException: null
at org.eclipse.sisu.plexus.RealmFilteredBeans$FilteredItr.next(RealmFilteredBeans.java:118)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
at org.eclipse.sisu.plexus.RealmFilteredBeans$FilteredItr.next(RealmFilteredBeans.java:1)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
at org.eclipse.sisu.plexus.DefaultPlexusBeans$Itr.next(DefaultPlexusBeans.java:76)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
at org.eclipse.sisu.plexus.DefaultPlexusBeans$Itr.next(DefaultPlexusBeans.java:1)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:263)
~[org.eclipse.sisu.plexus-0.3.2.jar!/:na]
... 68 common frames omitted

2020-09-11 13:21:28.035 WARN 10196 --- [ main]
o.a.m.i.embedder.MavenProjectLoader : Unable to parse pom.xml
file of the running project:
org.appformer.maven.integration.embedder.MavenEmbedderException:
java.util.NoSuchElementException
role: org.apache.maven.execution.MavenExecutionRequestPopulator
roleHint:
2020-09-11 13:21:28.053 INFO 10196 --- [ main]
o.a.maven.integration.MavenRepository : Erasing directory from
local maven repository
/root/.m2/repository/com/thoughtworks/xstream/xstream/1.4.10
2020-09-11 13:21:28.083 ERROR 10196 --- [ main]
o.a.m.i.embedder.MavenProjectLoader : Unable to create
MavenProject from InputStream

org.apache.maven.project.ProjectBuildingException: 1 problem was
encountered while building the effective model
[FATAL] Non-readable POM : Stream closed @
for project
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:168)
~[maven-core-3.3.9.jar!/:3.3.9]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:126)
~[maven-core-3.3.9.jar!/:3.3.9]
at org.appformer.maven.integration.embedder.MavenEmbedder.readProject(MavenEmbedder.java:312)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:91)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:84)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.buildPomParser(InJarArtifactResolver.java:110)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.init(InJarArtifactResolver.java:63)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.<init>(InJarArtifactResolver.java:54)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.ArtifactResolver.getResolverFor(ArtifactResolver.java:48)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.scanner.KieInJarModuleMetaDataImpl.<init>(KieInJarModuleMetaDataImpl.java:82)
[kie-ci-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.scanner.KieModuleMetaData$Factory.newInJarKieModuleMetaData(KieModuleMetaData.java:78)
[kie-ci-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.ImmutableSpringBootKieServerImpl.buildKieModuleMetadata(ImmutableSpringBootKieServerImpl.java:53)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.createContainer(KieServerImpl.java:282)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainersSync(ContainerManager.java:49)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainers(ContainerManager.java:35)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.InmutableContainerStartupStrategy.startup(InmutableContainerStartupStrategy.java:43)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.init(KieServerImpl.java:191)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.ImmutableSpringBootKieServerImpl.init(ImmutableSpringBootKieServerImpl.java:88)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration.kieServer(KieServerAutoConfiguration.java:108)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a.CGLIB$kieServer$3(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a$$FastClassBySpringCGLIB$$47e08cbc.invoke(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
[spring-core-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a.kieServer(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.8.0_261]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_261]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_261]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:636)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1338)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:557)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
~[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:882)
~[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878)
~[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
~[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at com.company.service.ServerApplication.main(ServerApplication.java:10)
~[classes!/:1.0-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.8.0_261]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_261]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_261]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:51)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
Caused by: org.apache.maven.model.building.ModelBuildingException: 1
problem was encountered while building the effective model
[FATAL] Non-readable POM : Stream closed @

at org.apache.maven.model.building.DefaultModelProblemCollector.newModelBuildingException(DefaultModelProblemCollector.java:197)
~[maven-model-builder-3.3.9.jar!/:3.3.9]
at org.apache.maven.model.building.DefaultModelBuilder.readModel(DefaultModelBuilder.java:598)
~[maven-model-builder-3.3.9.jar!/:3.3.9]
at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:273)
~[maven-model-builder-3.3.9.jar!/:3.3.9]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:161)
~[maven-core-3.3.9.jar!/:3.3.9]
... 56 common frames omitted

2020-09-11 13:21:28.087 ERROR 10196 --- [ main]
o.k.server.services.impl.KieServerImpl : Error creating container
'evaluation_v1' for module 'com.myspace:Evaluation:1.0.0-SNAPSHOT'

java.lang.RuntimeException:
org.apache.maven.project.ProjectBuildingException: 1 problem was
encountered while building the effective model
[FATAL] Non-readable POM : Stream closed @
for project
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:116)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:84)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.buildPomParser(InJarArtifactResolver.java:110)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.init(InJarArtifactResolver.java:63)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.InJarArtifactResolver.<init>(InJarArtifactResolver.java:54)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.ArtifactResolver.getResolverFor(ArtifactResolver.java:48)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.scanner.KieInJarModuleMetaDataImpl.<init>(KieInJarModuleMetaDataImpl.java:82)
~[kie-ci-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.scanner.KieModuleMetaData$Factory.newInJarKieModuleMetaData(KieModuleMetaData.java:78)
~[kie-ci-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.ImmutableSpringBootKieServerImpl.buildKieModuleMetadata(ImmutableSpringBootKieServerImpl.java:53)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.createContainer(KieServerImpl.java:282)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainersSync(ContainerManager.java:49)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainers(ContainerManager.java:35)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.InmutableContainerStartupStrategy.startup(InmutableContainerStartupStrategy.java:43)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.init(KieServerImpl.java:191)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.ImmutableSpringBootKieServerImpl.init(ImmutableSpringBootKieServerImpl.java:88)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration.kieServer(KieServerAutoConfiguration.java:108)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a.CGLIB$kieServer$3(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a$$FastClassBySpringCGLIB$$47e08cbc.invoke(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
[spring-core-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$60d7aa2a.kieServer(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.8.0_261]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_261]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_261]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:636)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1338)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:557)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
~[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:882)
~[spring-beans-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878)
~[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
~[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)
~[spring-boot-2.2.6.RELEASE.jar!/:2.2.6.RELEASE]
at com.company.service.ServerApplication.main(ServerApplication.java:10)
~[classes!/:1.0-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.8.0_261]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_261]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_261]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:51)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52)
~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
Caused by: org.apache.maven.project.ProjectBuildingException: 1
problem was encountered while building the effective model
[FATAL] Non-readable POM : Stream closed @
for project
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:168)
~[maven-core-3.3.9.jar!/:3.3.9]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:126)
~[maven-core-3.3.9.jar!/:3.3.9]
at org.appformer.maven.integration.embedder.MavenEmbedder.readProject(MavenEmbedder.java:312)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:91)
~[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
... 53 common frames omitted
Caused by: org.apache.maven.model.building.ModelBuildingException: 1
problem was encountered while building the effective model
[FATAL] Non-readable POM : Stream closed @

at org.apache.maven.model.building.DefaultModelProblemCollector.newModelBuildingException(DefaultModelProblemCollector.java:197)
~[maven-model-builder-3.3.9.jar!/:3.3.9]
at org.apache.maven.model.building.DefaultModelBuilder.readModel(DefaultModelBuilder.java:598)
~[maven-model-builder-3.3.9.jar!/:3.3.9]
at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:273)
~[maven-model-builder-3.3.9.jar!/:3.3.9]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:161)
~[maven-core-3.3.9.jar!/:3.3.9]
... 56 common frames omitted

2020-09-11 13:21:29.719 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : I/O exception
(java.net.NoRouteToHostException) caught when connecting to
{s}->https://repository.jboss.org:443: No route to host (Host
unreachable)
2020-09-11 13:21:29.722 INFO 10196 --- [ main]
o.a.http.impl.client.DefaultHttpClient : Retrying connect to
{s}->https://repository.jboss.org:443
[WARNING] Failure to transfer
com.company:business-application-model:2.0-SNAPSHOT/maven-metadata.xml
from https://repository.jboss.org/nexus/content/groups/public/ was
cached in the local repository, resolution will not be reattempted
until the update interval of jboss-public-repository-group has elapsed
or updates are forced. Original error: Could not transfer metadata
com.company:business-application-model:2.0-SNAPSHOT/maven-metadata.xml
from/to jboss-public-repository-group
(https://repository.jboss.org/nexus/content/groups/public/): Connect
to repository.jboss.org:443 timed out
[WARNING] Failure to transfer
com.company:business-application-model:2.0-SNAPSHOT/maven-metadata.xml
from https://repository.jboss.org/nexus/content/groups/public/ was
cached in the local repository, resolution will not be reattempted
until the update interval of jboss-public-repository-group has elapsed
or updates are forced. Original error: Could not transfer metadata
com.company:business-application-model:2.0-SNAPSHOT/maven-metadata.xml
from/to jboss-public-repository-group
(https://repository.jboss.org/nexus/content/groups/public/): Connect
to repository.jboss.org:443 timed out
2020-09-11 13:21:49.750 INFO 10196 --- [ main]
o.a.maven.integration.MavenRepository : Erasing directory from
local maven repository
/root/.m2/repository/com/thoughtworks/xstream/xstream/1.4.10
2020-09-11 13:21:49.753 ERROR 10196 --- [ main]
o.a.m.i.embedder.MavenProjectLoader : Unable to create
MavenProject from InputStream

Leads me to believe that the pom needs to be present in the KIE-INF as
well. Let me know your thoughts.

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 11, 2020, 12:03:00 PM9/11/20
to Rituparno Pal, Abhijit Humbe, jBPM Usage
This line com.company.model.EmployeeEvaluation due to
In drools means that the model jar dependency is not packaged in your spring boot jar. 
What is the content of your kie-inf/lib? 

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 11, 2020, 1:56:06 PM9/11/20
to Rituparno Pal, Abhijit Humbe, jBPM Usage
Can you try to use this flag ?

-Dkie.maven.offline.force=true

El vie., 11 sept. 2020 a las 16:22, Rituparno Pal

Rituparno Pal

unread,
Sep 12, 2020, 12:26:57 AM9/12/20
to ENRIQUE GONZALEZ MARTINEZ, Abhijit Humbe, jBPM Usage
Hi Enrique

The previous error is gone but now I've another error to load the
dependencies of the kjar project. For example-

2020-09-12 04:24:21.737 ERROR 30840 --- [ main]
o.a.m.i.embedder.MavenProjectLoader : Artifact can't be resolved
com.thoughtworks.xstream:xstream:jar:1.4.10:test'
2020-09-12 04:24:21.739 INFO 30840 --- [ main]
o.a.m.i.embedder.MavenProjectLoader : Could not find artifact
org.kie:kie-internal:jar:7.43.0.Final

org.eclipse.aether.resolution.ArtifactResolutionException: Could not
find artifact org.kie:kie-internal:jar:7.43.0.Final
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444)
~[aether-impl-1.0.2.v20150114.jar!/:na]
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246)
~[aether-impl-1.0.2.v20150114.jar!/:na]
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:223)
~[aether-impl-1.0.2.v20150114.jar!/:na]
at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:294)
~[aether-impl-1.0.2.v20150114.jar!/:na]
at org.appformer.maven.integration.embedder.MavenProjectLoader.resolve(MavenProjectLoader.java:135)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:103)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:84)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.integration.MavenPomModelGenerator.parse(MavenPomModelGenerator.java:34)
[kie-soup-maven-integration-7.43.0.Final.jar!/:7.43.0.Final]
at org.appformer.maven.support.PomModel$Parser.parse(PomModel.java:110)
[kie-soup-maven-support-7.43.0.Final.jar!/:7.43.0.Final]
at org.drools.compiler.kie.builder.impl.AbstractKieModule.getPomModel(AbstractKieModule.java:451)
[drools-compiler-7.43.0.Final.jar!/:7.43.0.Final]
at org.drools.compiler.kie.builder.impl.AbstractKieModule.getJarDependencies(AbstractKieModule.java:125)
[drools-compiler-7.43.0.Final.jar!/:7.43.0.Final]
at org.jbpm.kie.services.impl.KModuleDeploymentService.deploy(KModuleDeploymentService.java:191)
[jbpm-kie-services-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.jbpm.JbpmKieServerExtension.createContainer(JbpmKieServerExtension.java:454)
[kie-server-services-jbpm-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.createContainer(KieServerImpl.java:295)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainersSync(ContainerManager.java:49)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.ContainerManager.installContainers(ContainerManager.java:35)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.InmutableContainerStartupStrategy.startup(InmutableContainerStartupStrategy.java:43)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.services.impl.KieServerImpl.init(KieServerImpl.java:191)
[kie-server-services-common-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.ImmutableSpringBootKieServerImpl.init(ImmutableSpringBootKieServerImpl.java:88)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration.kieServer(KieServerAutoConfiguration.java:108)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$da6fd57c.CGLIB$kieServer$3(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$da6fd57c$$FastClassBySpringCGLIB$$c68010ea.invoke(<generated>)
[kie-server-spring-boot-autoconfiguration-7.43.0.Final.jar!/:7.43.0.Final]
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
[spring-core-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
[spring-context-5.2.5.RELEASE.jar!/:5.2.5.RELEASE]
at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$da6fd57c.kieServer(<generated>)
Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException:
Could not find artifact org.kie:kie-internal:jar:7.43.0.Final
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:434)
~[aether-impl-1.0.2.v20150114.jar!/:na]

On Fri, 11 Sep 2020 at 23:26, ENRIQUE GONZALEZ MARTINEZ

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 12, 2020, 3:07:06 AM9/12/20
to Rituparno Pal, jBPM Usage
I guess that is a dependency in your kjar. Check if that dependency is in provided scope. 

El sáb., 12 sept. 2020 6:26, Rituparno Pal <ritupa...@gmail.com> escribió:
Hi Enrique

Rituparno Pal

unread,
Sep 12, 2020, 3:11:03 AM9/12/20
to ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Yeah, it is. Shall move the dependency to the service project itself?

On Sat, 12 Sep 2020 at 12:37, ENRIQUE GONZALEZ MARTINEZ

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 12, 2020, 3:12:34 AM9/12/20
to Rituparno Pal, jBPM Usage
Set the scope as provided. It should not try to resolve the artifact.

Rituparno Pal

unread,
Sep 12, 2020, 10:27:36 AM9/12/20
to ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Hi Enrique

This worked. Thanks a ton for your help. Have two further questions-

1. Will setting kie.maven.offline.force=true in application.properties
of my Springboot project will do the same effect?

2. How do I register my custom work-item handlers? In 7.36.0.Final
version using Kie services I kept the custom work-item handlers in the
service project and it picked it up from runtime. But it doesn't work
that way in this approach.

On Sat, 12 Sep 2020 at 12:42, ENRIQUE GONZALEZ MARTINEZ

Rituparno Pal

unread,
Sep 12, 2020, 1:55:38 PM9/12/20
to ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Hi Enrique

Please ignore point #2, found out in product documentation how to register it.

Rituparno Pal

unread,
Sep 12, 2020, 3:22:38 PM9/12/20
to ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Hi Enrique

Ignore #1 also, setting it on application.properties gave the same
effect. Thank you once again for your help.

ENRIQUE GONZALEZ MARTINEZ

unread,
Sep 15, 2020, 6:27:34 AM9/15/20
to Rituparno Pal, jBPM Usage
fyi
https://github.com/kiegroup/kie-soup/pull/155

This will be in 7.44

El sáb., 12 sept. 2020 a las 21:22, Rituparno Pal

Rituparno Pal

unread,
Sep 15, 2020, 6:58:54 AM9/15/20
to ENRIQUE GONZALEZ MARTINEZ, jBPM Usage
Thanks, I'll check it out. 

YS

unread,
Aug 26, 2021, 7:03:12 AM8/26/21
to jBPM Usage
Hi,

I am looking for similar requirement. Seems it is working for you, could you please guide the solution you implemented.
Scenario: JBPM - v7.43
want to deploy my kjar in spring boot kie server application. As you told it is working fine when the jar file is available in .m2 repository. I am using KModuleDeployment service to deploy the container. 
We need to deploy this application to cloud, where we don't have permissions to create any folders. So, I am trying to deploy the container from the class-path. But when I run the deployment service it is giving below errors:
          Cannot find kbase, either it does not exist or there are multiple default kbases in kmodule.xml.

Regards,
Soni.

Swapnil Ugare

unread,
Jan 24, 2022, 7:47:40 AM1/24/22
to jBPM Usage
Hello Team,

My kjar  file present in Remote nexus repository. I tried  -Dkie.maven.settings.custom configure to load from custom repository which I configured in setting.xml file, but no luck, Please let me know which way I can configure the to downloads/load the kjar files from remote nexus repository. We are using the gradle as build tool.

Thaxton Mauzy

unread,
Jun 30, 2022, 2:47:43 PM6/30/22
to jBPM Usage
Hey jBPM team - we're running into this same issue trying to deploy an immutable Spring Boot JAR to Pivotal Cloud Foundry (PCF). We packaged the uber JAR and can see the kJAR in BOOT-INF/classes/KIE-INF just fine. But when we list the deployments[] in application.properties, even with kie.maven.offline.force=true, the KIE Server still tries to go to a Maven repo to get the kJAR....

Sidenote: does anyone know why running the uber jar using "java -jar" behaves differently than using "java uber.jar org.springframework.boot.loader.JarLauncher"?

In any case, we removed the deployments[] in application.properties and turned on kieserver.autoScanDeployments=true, but this doesn't work on PCF...for some reason our PCF Build Pack expands the JAR and it seems to fail on Line 167 in the KieServerAutoConfiguration class...

Spring complains that BOOT-INF/classes is a directory...I'm assuming because PCF expanded the JAR...

Has anyone figured out a workaround to this issue? 

Or is there a way to force KIE to look in KIE-INF without turning on autoScanDeployments but also force it to not check a Maven repo?

Or, could we update Line 169 to use getResourcesAsStream instead of FileInputStream. Does anyone think that might be an option?

version.org.kie = 7.59.0.Final-00010

Thanks in advance to anyone that has input!

Donato Marrazzo

unread,
Jul 1, 2022, 9:52:22 AM7/1/22
to jBPM Usage
I believe that you forgot defining the maven plugin.

Here a full example:

Thaxton Mauzy

unread,
Jul 1, 2022, 12:12:44 PM7/1/22
to jBPM Usage
Thanks for the reply Donato!

So we have the <plugin> below in the Service's pom.xml and we can see the KIE Maven Plugin put the KJAR in the KIE-INF folder in our Uber JAR...but without AutoScan, the ContainerManager still goes to Maven to try and find the KJAR we put in application.properties, even though the KJAR is right there in the BOOT-INF/classes/KIE-INF/lib folder...

If we use AutoScan, we get the "FileNotFound" exception from the KieServerAutoConfiguration class.

Has anyone else been able to run an Immutable Spring Boot KIE on Pivotal Cloud Foundry (PCF)?

<plugin>
                <groupId>org.kie</groupId>
                <artifactId>kie-maven-plugin</artifactId>
                <version>${version.org.kie}</version>
                <executions>
                                <execution>
                                                <id>copy</id>
                                                <phase>prepare-package</phase>
                                                <goals>
                                                                <goal>package-dependencies-kjar</goal>
                                                </goals>
                                </execution>
                </executions>
                <configuration>
                                <artifactItems>
                                                <artifactItem>
                                                                <groupId>com.wellsfargo.wimt</groupId>
                                                                <artifactId>2MCA-RHPAM-KJAR-ACH</artifactId>
                                                                <version>2.1.18</version>
                                                </artifactItem>          
                                </artifactItems>
                </configuration>
</plugin>     
      

Donato Marrazzo

unread,
Jul 2, 2022, 3:33:43 AM7/2/22
to jBPM Usage
I'm not aware of PCF deployments but of many OpenShift deployments (immutable container no external maven).

Have you defined the kjar in the properties?

kieserver.deployments[0].containerId=your-kjar-1_0_0-SNAPSHOT
kieserver.deployments[0].alias=your-kjar
kieserver.deployments[0].groupId=com.example
kieserver.deployments[0].artifactId=your-kjar
kieserver.deployments[0].version=1.0.0-SNAPSHOT

Donato Marrazzo

unread,
Jul 2, 2022, 3:37:46 AM7/2/22
to jBPM Usage
Sorry reading again your previous post, I see that you removed `deployment` on purpose?
Unfortunately, it cannot work, you mush define the deployment section.

Thaxton Mauzy

unread,
Jul 5, 2022, 12:36:17 PM7/5/22
to jBPM Usage
Thanks again Donato!

So even if I add the KJAR GAV to kieserver.deployments[] and set autoScanDeployments=true, the application still doesn't load as a Spring Boot app in PCF...the error log is below.

So it looks like the AutoScan feature won't work in PCF because of the fact that PCF expands the JAR and turns it into a file system instead of a ZIP file...and the discoverDeployments() method won't work...maybe it is just because of the FileInputStream...or the Zip code in discoverDeployments()...?

I'll keep looking at these options.

   2022-07-05T10:02:10.99-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:10.990  INFO 14 --- [           main] com.arjuna.ats.arjuna                    : ARJUNA012170: TransactionStatusManager started on port 44277 and host 127.0.0.1 with service com.arjuna.ats.arjuna.recovery.ActionStatusService
   2022-07-05T10:02:11.00-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:11.000 DEBUG 14 --- [           main] o.k.s.p.KieSpringTransactionManager      : Current TX name (According to TransactionSynchronizationManager) : null
   2022-07-05T10:02:11.00-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:11.000 DEBUG 14 --- [           main] o.k.s.p.KieSpringTransactionManager      : Current TX: org.springframework.transaction.support.DefaultTransactionStatus@51c0346d
   2022-07-05T10:02:11.09-0400 [APP/PROC/WEB/0] OUT Hibernate: select querydefin0_.id as id1_33_, querydefin0_.qExpression as qexpression2_33_, querydefin0_.qName as qname3_33_, querydefin0_.qSource as qsource4_33_, querydefin0_.qTarget as qtarget5_33_ from QueryDefinitionStore querydefin0_
   2022-07-05T10:02:11.47-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:11.473  WARN 14 --- [           main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'kieServer' defined in class path resource [org/kie/server/springboot/autoconfiguration/KieServerAutoConfiguration.class]: Unsatisfied dependency expressed through method 'kieServer' parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'buildAutoScanDeployments' defined in class path resource [org/kie/server/springboot/autoconfiguration/KieServerAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Factory method 'buildAutoScanDeployments' threw exception; nested exception is java.io.FileNotFoundException: /home/vcap/app/BOOT-INF/classes (Is a directory)
   2022-07-05T10:02:11.47-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:11.478  INFO 14 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Shutting down ExecutorService 'applicationTaskExecutor'
   2022-07-05T10:02:11.47-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:11.479  INFO 14 --- [           main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'org.jbpm.domain'
   2022-07-05T10:02:12.05-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:12.049  INFO 14 --- [           main] com.arjuna.ats.jbossatx                  : ARJUNA032014: Stopping transaction recovery manager
   2022-07-05T10:02:12.05-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:12.055  INFO 14 --- [           main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
   2022-07-05T10:02:12.07-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:12.078  INFO 14 --- [           main] ConditionEvaluationReportLoggingListener :
   2022-07-05T10:02:12.07-0400 [APP/PROC/WEB/0] OUT Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT 2022-07-05 14:02:12.086 ERROR 14 --- [           main] o.s.boot.SpringApplication               : Application run failed
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'kieServer' defined in class path resource [org/kie/server/springboot/autoconfiguration/KieServerAutoConfiguration.class]: Unsatisfied dependency expressed through method 'kieServer' parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'buildAutoScanDeployments' defined in class path resource [org/kie/server/springboot/autoconfiguration/KieServerAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Factory method 'buildAutoScanDeployments' threw exception; nested exception is java.io.FileNotFoundException: /home/vcap/app/BOOT-INF/classes (Is a directory)
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:797) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:538) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1176) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:556) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:897) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879) ~[spring-context-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551) ~[spring-context-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143) ~[spring-boot-2.3.4.RELEASE.jar:2.3.4.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758) [spring-boot-2.3.4.RELEASE.jar:2.3.4.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) [spring-boot-2.3.4.RELEASE.jar:2.3.4.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) [spring-boot-2.3.4.RELEASE.jar:2.3.4.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-2.3.4.RELEASE.jar:2.3.4.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237) [spring-boot-2.3.4.RELEASE.jar:2.3.4.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.3.4.RELEASE.jar:2.3.4.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at com.wellsfargo.wimt.service.Application.main(Application.java:10) [classes/:${release}]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) [app/:na]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.loader.Launcher.launch(Launcher.java:107) [app/:na]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) [app/:na]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88) [app/:na]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'buildAutoScanDeployments' defined in class path resource [org/kie/server/springboot/autoconfiguration/KieServerAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Factory method 'buildAutoScanDeployments' threw exception; nested exception is java.io.FileNotFoundException: /home/vcap/app/BOOT-INF/classes (Is a directory)
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:655) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:635) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1176) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:556) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1307) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1227) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:884) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:788) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             ... 28 common frames omitted
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Factory method 'buildAutoScanDeployments' threw exception; nested exception is java.io.FileNotFoundException: /home/vcap/app/BOOT-INF/classes (Is a directory)
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:650) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             ... 42 common frames omitted
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT Caused by: java.io.FileNotFoundException: /home/vcap/app/BOOT-INF/classes (Is a directory)
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at java.io.FileInputStream.open0(Native Method) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at java.io.FileInputStream.open(FileInputStream.java:195) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at java.io.FileInputStream.<init>(FileInputStream.java:138) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration.buildAutoScanDeployments(KieServerAutoConfiguration.java:169) ~[kie-server-spring-boot-autoconfiguration-7.59.0.Final-redhat-00010.jar:7.59.0.Final-redhat-00010]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$a7bdecc2.CGLIB$buildAutoScanDeployments$5(<generated>) ~[kie-server-spring-boot-autoconfiguration-7.59.0.Final-redhat-00010.jar:7.59.0.Final-redhat-00010]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$a7bdecc2$$FastClassBySpringCGLIB$$2c110425.invoke(<generated>) ~[kie-server-spring-boot-autoconfiguration-7.59.0.Final-redhat-00010.jar:7.59.0.Final-redhat-00010]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244) ~[spring-core-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331) ~[spring-context-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.kie.server.springboot.autoconfiguration.KieServerAutoConfiguration$$EnhancerBySpringCGLIB$$a7bdecc2.buildAutoScanDeployments(<generated>) ~[kie-server-spring-boot-autoconfiguration-7.59.0.Final-redhat-00010.jar:7.59.0.Final-redhat-00010]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_331]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.2.9.RELEASE.jar:5.2.9.RELEASE]
   2022-07-05T10:02:12.08-0400 [APP/PROC/WEB/0] OUT             ... 43 common frames omitted
   2022-07-05T10:02:12.11-0400 [APP/PROC/WEB/0] OUT Exit status 1

Thaxton Mauzy

unread,
Jul 5, 2022, 9:39:05 PM7/5/22
to jBPM Usage
So the problem with PCF is that apparently it expands the JAR one layer locally when using cf push. And this turns BOOT-INF/lib into a folder instead of a directory, which we see breaks the code above.

So instead of servicesApp.jar getting pushed and run with java -jar in PCF, we get three folders: org, BOOT-INF, META-INF. And then PCF picks up the Spring Boot profile and uses the Java BuildPack to run JarLauncher.

So in our manifest.yml, we forced PCF to use PropertiesLauncher and set -Dloader.path=BOOT-INF/classes/KIE-INF/lib in manifest.yml and now KIE finds our KJAR in the classpath - yay!

Interestingly enough, KIE Container Manager still looks in Maven first, which is a little frustrating.

But either way, we appear to be making a little bit of progress on the Immutable Spring Boot KIE Server on PCF. I'll follow-up with more details on exactly what combination got us working. And if I get a chance, I'll look at that AutoScan code to see if it can be updated with Spring's getResourcesAsStream instead of FileInputStream so its PCF and non-PCF compatible (if that's even a thing).

Donato Marrazzo

unread,
Jul 6, 2022, 5:01:27 AM7/6/22
to jBPM Usage
Maybe a workaround PCF bug could be to add an empty file in BOOT-INF.
When you have the deployment[] properties you can switch off the "auto scan" one, I'm not sure but it's likely that it will avoid the maven lookup behavior.

ENRIQUE GONZALEZ MARTINEZ

unread,
Jul 6, 2022, 5:32:24 AM7/6/22
to Donato Marrazzo, jBPM Usage
That wont work. The self contained image is tested with fat jars but not with exploded jars. There is a pr to fix that but not merged yet.

Thaxton Mauzy

unread,
Oct 5, 2022, 8:47:43 PM10/5/22
to jBPM Usage
In case anyone is still following this thread, we did some testing with RHPAM 7.13.1 and jBPM 7.67.x and the problem with the immutable KIE server on PCF not being able to find the kJAR seems to be resolved - yay!

We had to add -Dorg.kie.maven.resolver.folder=/BOOT-INF/classes/KIE-INF/lib to the PCF Java command so that the resolver knows the exploded path for the KJAR.

A big thanks to the jBPM/KIE/RHPAM folks that helped get this implemented!

Reply all
Reply to author
Forward
0 new messages