在 KIE 执行服务器中创建求解器异常
Exception creating solver in KIE execution server
我正在尝试将我的 kjar 部署到 KIE 执行服务器,但在 URL:
上使用 PUT 创建求解器 'taskPlanningSolver' 时出现异常
http://localhost:8080/kie-server/services/rest/server/containers/taskplanning1/solvers/taskPlanningSolver
这是我拥有的:
一个。我在 tomcat(windows) 上有一个 KIE 执行服务器 运行。它支持 BRMS 和 BPM。
B. 我有一个 Maven 项目(使用 optaplanner),它安装在我本地的 Maven 仓库中。
C. 我使用 PUT on:
在 KIE 服务器中成功创建了一个容器
http://localhost:8080/kie-server/services/rest/server/containers/taskplanning1
与 body:
<kie-container container-id="taskplanning1">
<release-id>
<group-id>com.kairos.planning</group-id>
<artifact-id>task-planning</artifact-id>
<version>1.0.1-SNAPSHOT</version>
</release-id>
</kie-container>
我需要帮助创建一个抛出异常的求解器:
"Unexpected error during processing: sun.reflect.annotation.TypeNotPresentExceptionProxy"
备注:
我确实在 maven repo 中安装了 jar 中的 kmodule.xml 及其内部 META-INF 并且它的内容仅为:
2017-08-30 11:56:07,977 ERROR [org.kie.server.remote.rest.optaplanner.SolverResource] (default task-3) Unexpected error creating solver 'taskPlanningSolver' on container 'taskplanning2': sun.reflect.annotation.TypeNotPresentExceptionProxy: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
at sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:724)
at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:531)
at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:355)
at sun.reflect.annotation.AnnotationParser.parseAnnotation2(AnnotationParser.java:286)
at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:120)
at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:72)
at java.lang.Class.createAnnotationData(Class.java:3521)
at java.lang.Class.annotationData(Class.java:3510)
at java.lang.Class.getAnnotation(Class.java:3415)
at com.thoughtworks.xstream.mapper.AnnotationMapper$UnprocessedTypesSet.add(AnnotationMapper.java:614)
at com.thoughtworks.xstream.mapper.AnnotationMapper$UnprocessedTypesSet.add(AnnotationMapper.java:599)
at com.thoughtworks.xstream.mapper.AnnotationMapper.processAnnotations(AnnotationMapper.java:162)
at com.thoughtworks.xstream.XStream.processAnnotations(XStream.java:2036)
at com.thoughtworks.xstream.XStream.processAnnotations(XStream.java:2047)
at org.kie.server.api.marshalling.xstream.XStreamMarshaller.configureMarshaller(XStreamMarshaller.java:186)
at org.kie.server.api.marshalling.xstream.XStreamMarshaller.<init>(XStreamMarshaller.java:103)
at org.kie.server.api.marshalling.BaseMarshallerBuilder.build(BaseMarshallerBuilder.java:37)
at org.kie.server.api.marshalling.MarshallerFactory.getMarshaller(MarshallerFactory.java:52)
at org.kie.server.services.impl.KieContainerInstanceImpl.getMarshaller(KieContainerInstanceImpl.java:175)
我在创建容器时也看到很多异常,但容器创建成功。所有错误都是 NoClassDefFoundError,即使我将所有依赖项添加到我的项目的 pom 中,我仍然得到一个新的 class 导致 NoClassDefFoundError。
我也没有将 kjar 部署到 kie 执行服务器的好指南。我将在成功测试后创建一个。如果可能请帮忙。提前致谢。
Kie 执行服务器已经有 optaplanner jar,它有所有需要的依赖项,包括所有日志依赖项。因此,您需要确保项目的 pom 具有零运行时依赖性。您项目中需要的所有依赖项都应标记为 provided
范围,例如:
<dependency>
<groupId>org.optaplanner</groupId>
<artifactId>optaplanner-persistence-common</artifactId>
<version>${version.optaplanner.bom}</version>
<scope>provided</scope>
</dependency>
我正在尝试将我的 kjar 部署到 KIE 执行服务器,但在 URL:
上使用 PUT 创建求解器 'taskPlanningSolver' 时出现异常http://localhost:8080/kie-server/services/rest/server/containers/taskplanning1/solvers/taskPlanningSolver
这是我拥有的:
一个。我在 tomcat(windows) 上有一个 KIE 执行服务器 运行。它支持 BRMS 和 BPM。
B. 我有一个 Maven 项目(使用 optaplanner),它安装在我本地的 Maven 仓库中。
C. 我使用 PUT on:
http://localhost:8080/kie-server/services/rest/server/containers/taskplanning1
与 body:
<kie-container container-id="taskplanning1">
<release-id>
<group-id>com.kairos.planning</group-id>
<artifact-id>task-planning</artifact-id>
<version>1.0.1-SNAPSHOT</version>
</release-id>
</kie-container>
我需要帮助创建一个抛出异常的求解器:
"Unexpected error during processing: sun.reflect.annotation.TypeNotPresentExceptionProxy"
备注: 我确实在 maven repo 中安装了 jar 中的 kmodule.xml 及其内部 META-INF 并且它的内容仅为:
2017-08-30 11:56:07,977 ERROR [org.kie.server.remote.rest.optaplanner.SolverResource] (default task-3) Unexpected error creating solver 'taskPlanningSolver' on container 'taskplanning2': sun.reflect.annotation.TypeNotPresentExceptionProxy: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
at sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:724)
at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:531)
at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:355)
at sun.reflect.annotation.AnnotationParser.parseAnnotation2(AnnotationParser.java:286)
at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:120)
at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:72)
at java.lang.Class.createAnnotationData(Class.java:3521)
at java.lang.Class.annotationData(Class.java:3510)
at java.lang.Class.getAnnotation(Class.java:3415)
at com.thoughtworks.xstream.mapper.AnnotationMapper$UnprocessedTypesSet.add(AnnotationMapper.java:614)
at com.thoughtworks.xstream.mapper.AnnotationMapper$UnprocessedTypesSet.add(AnnotationMapper.java:599)
at com.thoughtworks.xstream.mapper.AnnotationMapper.processAnnotations(AnnotationMapper.java:162)
at com.thoughtworks.xstream.XStream.processAnnotations(XStream.java:2036)
at com.thoughtworks.xstream.XStream.processAnnotations(XStream.java:2047)
at org.kie.server.api.marshalling.xstream.XStreamMarshaller.configureMarshaller(XStreamMarshaller.java:186)
at org.kie.server.api.marshalling.xstream.XStreamMarshaller.<init>(XStreamMarshaller.java:103)
at org.kie.server.api.marshalling.BaseMarshallerBuilder.build(BaseMarshallerBuilder.java:37)
at org.kie.server.api.marshalling.MarshallerFactory.getMarshaller(MarshallerFactory.java:52)
at org.kie.server.services.impl.KieContainerInstanceImpl.getMarshaller(KieContainerInstanceImpl.java:175)
我在创建容器时也看到很多异常,但容器创建成功。所有错误都是 NoClassDefFoundError,即使我将所有依赖项添加到我的项目的 pom 中,我仍然得到一个新的 class 导致 NoClassDefFoundError。
我也没有将 kjar 部署到 kie 执行服务器的好指南。我将在成功测试后创建一个。如果可能请帮忙。提前致谢。
Kie 执行服务器已经有 optaplanner jar,它有所有需要的依赖项,包括所有日志依赖项。因此,您需要确保项目的 pom 具有零运行时依赖性。您项目中需要的所有依赖项都应标记为 provided
范围,例如:
<dependency>
<groupId>org.optaplanner</groupId>
<artifactId>optaplanner-persistence-common</artifactId>
<version>${version.optaplanner.bom}</version>
<scope>provided</scope>
</dependency>