2010-07-27 4 views
0

Alors que je essaie d'exécuter l'exemple de processus HelloWord de la section 2.3Impossible de trouver la org.drools.builder.KnowledgeType drrols classe

org.drools.builder.KnowledgeType

Quelqu'un pourrait-il s'il vous plaît dire de quel paquet puis-je obtenir cette classe?

Merci!

Répondre

0

Cette partie de la documentation semble un peu désuète. Vous devriez utiliser ResourceType. J'ai mis à jour les docs avec le fragment de code suivant à la place (doit également apparaître sur le lien que vous utilisez une fois la génération réussie):

package com.sample; 

import org.drools.KnowledgeBase; 
import org.drools.builder.KnowledgeBuilder; 
import org.drools.builder.KnowledgeBuilderFactory; 
import org.drools.builder.ResourceType; 
import org.drools.io.ResourceFactory; 
import org.drools.logger.KnowledgeRuntimeLogger; 
import org.drools.logger.KnowledgeRuntimeLoggerFactory; 
import org.drools.runtime.StatefulKnowledgeSession; 

/** 
* This is a sample file to launch a process. 
*/ 
public class ProcessTest { 

    public static final void main(String[] args) { 
    try { 
     // load up the knowledge base 
     KnowledgeBase kbase = readKnowledgeBase(); 
     StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession(); 
     KnowledgeRuntimeLogger logger = KnowledgeRuntimeLoggerFactory.newFileLogger(ksession, "test"); 
     // start a new process instance 
     ksession.startProcess("com.sample.ruleflow"); 
     logger.close(); 
    } catch (Throwable t) { 
     t.printStackTrace(); 
    } 
    } 

    private static KnowledgeBase readKnowledgeBase() throws Exception { 
    KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); 
    kbuilder.add(ResourceFactory.newClassPathResource("ruleflow.rf"), ResourceType.DRF); 
    return kbuilder.newKnowledgeBase(); 
    } 
}