I'm getting the following error.
org.drools.RuntimeDroolsException: invalid package name
at org.jbpm.compiler.ProcessBuilderImpl.buildProcess(ProcessBuilderImpl.java:173)
at org.jbpm.compiler.ProcessBuilderImpl.addProcessFromXml(ProcessBuilderImpl.java:252)
at org.drools.compiler.PackageBuilder.addProcessFromXml(PackageBuilder.java:564)
at org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:608)
at org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:37)
at com.edpm.demo.JBPMClient.readKnowledgeBase(JBPMClient.java:72)
at com.edpm.demo.JBPMClient.main(JBPMClient.java:38)
[5,9]: [ERR 102] Line 5:9 mismatched input 'DeliveryStatus' in rule "RuleFlow-Split-com.edpm.demo.LoanProcess-3-4-DROOLS_DEFAULT"
[12,9]: [ERR 102] Line 12:9 mismatched input 'DeliveryStatus' in rule "RuleFlow-Split-com.edpm.demo.LoanProcess-3-5-DROOLS_DEFAULT"
[0,0]: Parser returned a null Package
ProcessLoadError: unable to parse xml : Exception class org.drools.RuntimeDroolsException : invalid package name
java.lang.IllegalArgumentException: Could not parse knowledge.
at org.drools.builder.impl.KnowledgeBuilderImpl.newKnowledgeBase(KnowledgeBuilderImpl.java:67)
at com.edpm.demo.JBPMClient.readKnowledgeBase(JBPMClient.java:73)
at com.edpm.demo.JBPMClient.main(JBPMClient.java:38)
Rule
#created on: Mar 27, 2012
package com.edpm.demo
import com.edpm.demo.Loan;
import org.drools.event.process.ProcessStartedEvent;
declare ProcessStartedEvent
@role(event)
end
rule "Spike alert"
when
Number (nbProcesses : intValue > 3)
from accumulate(
e: ProcessStartedEvent(processInstance.processId == "com.edpm.demo.LoanProcess")
over window:size(1h),
count(e))
loan:Loan(true)
then
loan.setProcessId(nbProcesses);
loan.setDeliveryStatus(false);
end
rule "Spike alert1"
when
Number (nbProcesses : intValue < 3)
from accumulate(
e: ProcessStartedEvent(processInstance.processId == "com.edpm.demo.LoanProcess")
over window:size(1h),
count(e))
loan:Loan(false)
then
loan.setProcessId(nbProcesses);
loan.setDeliveryStatus(false);
end
Test code
Loan loan = new Loan();
ksession.insert(loan);
ksession.fireAllRules();
Map<String, Object> params = new HashMap<String, Object>();
params.put("myLoan",loan);
ksession.startProcess("LoanProcess",params);
BPM settings
Id com.ebpm.demo.LoanProcess
Name LoanProcess
Package org.drools.bpmn2
swimlanes loan
variables myLoan