Spring Boot 3.2.x + Drools 7.73 + JDK 21: java.lang.classnotfoundexception: java.lang.compilerJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Spring Boot 3.2.x + Drools 7.73 + JDK 21: java.lang.classnotfoundexception: java.lang.compiler

Сообщение Anonymous »

Я пытаюсь создать общий код для инициализации контейнера KIE на бизнес -процесс BPMN. Необходимо включить функциональность развертывания BPMN в контейнер KIE, чтобы выполнить эти конкретные экземпляры бизнес -процесса. Вот настройки:
зависимости градл:
implementation 'org.kie:kie-api:7.73.0.Final'
implementation 'org.kie:kie-dmn-api:7.73.0.Final'
implementation 'org.drools:drools-core:7.73.0.Final'
implementation 'org.jbpm:jbpm-flow:7.73.0.Final'
implementation("org.jbpm:jbpm-bpmn2:7.73.0.Final")
implementation("org.drools:drools-compiler:7.73.0.Final")
implementation 'org.jbpm:jbpm-flow-builder:7.73.0.Final'
implementation 'org.kie:kie-spring:7.73.0.Final'

Пример кода:
BpmnProcess process = bpmnProcessRepository.findByProcessId(processId);
if (process != null) {
String bpmnProcess = StringEscapeUtils.unescapeCsv(process.getBpmnXml());

BPMN2ProcessProvider provider = BPMN2ProcessFactory.getBPMN2ProcessProvider();
if (provider == null) {

throw new IllegalStateException("BPMN2ProcessProvider is not initialized. Ensure jbpm-flow-builder is on the classpath.");
} else {
System.out.println("BPMN2ProcessProvider is properly initialized.");
}

KieServices kieServices = KieServices.Factory.get();
String groupId = "com.example.kie";
String artifactId = "dynamic-process";
String version = "1.0.0";
ReleaseId releaseId = kieServices.newReleaseId(groupId, artifactId, version);
KieFileSystem kieFileSystem = kieServices.newKieFileSystem();
kieFileSystem.write("src/main/resources/process.bpmn", bpmnProcess);

kieServices.newKieBuilder(kieFileSystem).buildAll();
kieContainer = kieServices.newKieContainer(releaseId);
}

Проблема: bpmn2pocessprovider всегда инициализируется как NULL, и я не мог найти четкую документацию об этом. Пожалуйста, поделитесь любым рабочим образцом для использования динамических форматов BPMN с jbpm
Журнал ошибок:
2025-03-24T12:21:26.365+05:30 ERROR 22008 --- [workflow-engine-core] [nio-8080-exec-1] o.k.a.i.utils.ServiceDiscoveryImpl : Loading failed because Cannot create instance of class: org.jbpm.bpmn2.BPMN2ProcessProviderImpl
2025-03-24T12:21:36.310+05:30 ERROR 22008 --- [workflow-engine-core] [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed: java.lang.ExceptionInInitializerError] with root cause

java.lang.ClassNotFoundException: java.lang.Compiler
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) ~[na:na]
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) ~[na:na]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:528) ~[na:na]
at org.mvel2.compiler.AbstractParser.setupParser(AbstractParser.java:215) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.compiler.AbstractParser.(AbstractParser.java:153) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.MVEL.compileExpression(MVEL.java:831) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.templates.res.CompiledDeclareNode.(CompiledDeclareNode.java:42) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.templates.TemplateCompiler.compileFrom(TemplateCompiler.java:185) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.templates.TemplateCompiler.compile(TemplateCompiler.java:82) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.templates.TemplateCompiler.compileTemplate(TemplateCompiler.java:414) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.templates.TemplateCompiler.compileTemplate(TemplateCompiler.java:405) ~[mvel2-2.4.14.Final.jar:na]
at org.mvel2.templates.TemplateCompiler.compileTemplate(TemplateCompiler.java:401) ~[mvel2-2.4.14.Final.jar:na]
at org.jbpm.process.builder.dialect.java.AbstractJavaProcessBuilder.(AbstractJavaProcessBuilder.java:46) ~[jbpm-flow-builder-7.73.0.Final.jar:7.73.0.Final]
at org.jbpm.process.builder.dialect.java.JavaProcessDialect.(JavaProcessDialect.java:38) ~[jbpm-flow-builder-7.73.0.Final.jar:7.73.0.Final]
at org.jbpm.process.builder.dialect.ProcessDialectRegistry.(ProcessDialectRegistry.java:35) ~[jbpm-flow-builder-7.73.0.Final.jar:7.73.0.Final]
at org.jbpm.bpmn2.BPMN2ProcessProviderImpl.(BPMN2ProcessProviderImpl.java:32) ~[jbpm-bpmn2-7.73.0.Final.jar:7.73.0.Final]
at java.base/java.lang.Class.forName0(Native Method) ~[na:na]
at java.base/java.lang.Class.forName(Class.java:578) ~[na:na]
at java.base/java.lang.Class.forName(Class.java:557) ~[na:na]
at org.kie.api.internal.utils.ServiceDiscoveryImpl.newInstance(ServiceDiscoveryImpl.java:162) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceDiscoveryImpl.processKieService(ServiceDiscoveryImpl.java:146) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceDiscoveryImpl.registerConfs(ServiceDiscoveryImpl.java:123) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceDiscoveryImpl.lambda$getServices$1(ServiceDiscoveryImpl.java:105) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at java.base/java.util.Optional.ifPresent(Optional.java:178) ~[na:na]
at org.kie.api.internal.utils.ServiceDiscoveryImpl.getServices(ServiceDiscoveryImpl.java:103) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceRegistry$Impl.(ServiceRegistry.java:62) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.drools.dynamic.DynamicServiceRegistrySupplier$LazyHolder.(DynamicServiceRegistrySupplier.java:27) ~[drools-core-dynamic-7.73.0.Final.jar:7.73.0.Final]
at org.drools.dynamic.DynamicServiceRegistrySupplier.get(DynamicServiceRegistrySupplier.java:32) ~[drools-core-dynamic-7.73.0.Final.jar:7.73.0.Final]
at org.drools.dynamic.DynamicServiceRegistrySupplier.get(DynamicServiceRegistrySupplier.java:23) ~[drools-core-dynamic-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceRegistry$Impl.getServiceRegistry(ServiceRegistry.java:90) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceRegistry$ServiceRegistryHolder.(ServiceRegistry.java:49) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceRegistry.getInstance(ServiceRegistry.java:41) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.kie.api.internal.utils.ServiceRegistry.getService(ServiceRegistry.java:37) ~[kie-api-7.73.0.Final.jar:7.73.0.Final]
at org.drools.compiler.compiler.BPMN2ProcessFactory$LazyHolder.(BPMN2ProcessFactory.java:25) ~[drools-compiler-7.73.0.Final.jar:7.73.0.Final]
at org.drools.compiler.compiler.BPMN2ProcessFactory.getBPMN2ProcessProvider(BPMN2ProcessFactory.java:33) ~[drools-compiler-7.73.0.Final.jar:7.73.0.Final]
at com.ram.m.suite.workflow_engine.kie.Kie.kieBase(Kie.java:61) ~[main/:na]
at com.ram.m.suite.workflow_engine.controller.BpmnProcessController.deployProcess(BpmnProcessController.java:54) ~[main/:na]
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[na:na]
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) ~[spring-web-6.2.2.jar:6.2.2]
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) ~[spring-web-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) ~[spring-webmvc-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) ~[spring-webmvc-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) ~[spring-webmvc-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) ~[spring-webmvc-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) ~[spring-webmvc-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) ~[spring-webmvc-6.2.2.jar:6.2.2]
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) ~[spring-webmvc-6.2.2.jar:6.2.2]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) ~[tomcat-embed-core-10.1.34.jar:6.0]
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) ~[spring-webmvc-6.2.2.jar:6.2.2]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) ~[tomcat-embed-core-10.1.34.jar:6.0]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) ~[tomcat-embed-websocket-10.1.34.jar:10.1.34]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-6.2.2.jar:6.2.2]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.2.2.jar:6.2.2]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-6.2.2.jar:6.2.2]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.2.2.jar:6.2.2]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-6.2.2.jar:6.2.2]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.2.2.jar:6.2.2]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) ~[tomcat-embed-core-10.1.34.jar:10.1.34]
at java.base/java.lang.Thread.run(Thread.java:1575) ~[na:na]


Подробнее здесь: https://stackoverflow.com/questions/795 ... ption-java
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Spring Boot 3.2.x + Dlools 7.73 + JDK 21: java.lang.classnotfoundexception: java.lang.compiler
    Anonymous » » в форуме JAVA
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Drools - Вытаскивание ArrayList из Hashmap в Drools
    Anonymous » » в форуме JAVA
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Drools - Вытаскивание ArrayList из Hashmap в Drools
    Anonymous » » в форуме JAVA
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Java.lang.ClassNotFoundException: jdk.javadoc.doclet.Doclet после переключения с JDK на JRE
    Anonymous » » в форуме JAVA
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • Compiler.complieclass возвращает false (java.lang.compiler)
    Anonymous » » в форуме JAVA
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»