2017-08-29 5 views
0

Je suis en train de déployer mon Kjar au serveur d'exécution de KIE mais obtenir une exception tout en créant un solveur « taskPlanningSolver » en utilisant Enfilez URL:Exception solveur création dans le serveur d'exécution de KIE

http://localhost:8080/kie-server/services/rest/server/containers/taskplanning1/solvers/taskPlanningSolver 

Voici ce que j'ai:

A. J'ai un serveur d'exécution KIE fonctionnant sur tomcat (windows). Il prend en charge BRMS et BPM.
B. J'ai un projet maven (qui utilise optaplanner) et il est installé dans mon repo maven local.
C. J'ai créé un conteneur avec succès dans le serveur KIE en utilisant PUT sur:

http://localhost:8080/kie-server/services/rest/server/containers/taskplanning1 

avec le corps:

<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> 

je besoin d'aide à la création d'un solveur qui jette exception:

"Unexpected error during processing: sun.reflect.annotation.TypeNotPresentExceptionProxy" 

Notes: J'ai kmodule.xml en jar installé dans maven repo et son META-INF à l'intérieur et je Le contenu de t est seulement:

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) 

Je vois aussi beaucoup d'exceptions lors de la création du conteneur mais le conteneur est créé avec succès. Toutes les erreurs sont NoClassDefFoundError et même si j'ai ajouté toutes les dépendances à pom de mon projet, je reçois toujours une nouvelle classe qui provoque NoClassDefFoundError.

Je n'ai pas non plus un bon guide pour déployer le serveur d'exécution kjar to kie. Je vais en créer un après l'avoir testé avec succès. S'il vous plaît aider si possible. Merci d'avance.

Répondre

1

Le serveur d'exécution de Kie dispose déjà de jars optaplanner et possède toutes les dépendances dont vous aurez besoin, y compris toutes les dépendances de journalisation. Donc, vous devez vous assurer que le pom de votre projet n'a aucune dépendance à l'exécution. Toutes les dépendances dont vous avez besoin dans votre projet doivent être marquées provided portée comme:

 <dependency> 
      <groupId>org.optaplanner</groupId> 
      <artifactId>optaplanner-persistence-common</artifactId> 
      <version>${version.optaplanner.bom}</version> 
      <scope>provided</scope> 
     </dependency>