ous2k [
https://community.jboss.org/people/ous2k] created the discussion
"Re: jBPM5.3 and EJB3"
To view the discussion, visit:
https://community.jboss.org/message/728873#728873
--------------------------------------------------------------
i've a sample code which invokes drools/jbpm using which is *working correctly* using
static main method
i've made a sample jsf page which invokes a hello EJB it *is working correctly*
now i'd like to invoke the EJB which runs the same code(invoke drools rules )
when i made the change in EJB i'm getting this msg , first i thougth it is not
possible to use drools/jbpm with EJB,now i've the answer
-Drools Libraries i'm using drools-distribution-5.3.0.Final binaries
*code:*
package com.himilco.ocana.workflow.core.bo;
import java.util.Date;
import javax.ejb.EJB;
import javax.ejb.Stateful;
import javax.ejb.Stateless;
import org.drools.KnowledgeBase;
import org.drools.builder.KnowledgeBuilder;
import org.drools.builder.KnowledgeBuilderError;
import org.drools.builder.KnowledgeBuilderFactory;
import org.drools.builder.ResourceType;
import org.drools.io.ResourceFactory;
import org.drools.logger.KnowledgeRuntimeLoggerFactory;
import org.drools.runtime.StatefulKnowledgeSession;
import com.himilco.ocana.workflow.core.bo.model.OperatorInterventionStateBean;
import com.himilco.ocana.workflow.core.dao.entities.Ticket;
@Stateful
public class OperatorBO {
private static String DLRFileAssociated =
"OperatorIntervention.drl";
public void processOperatorInterventionChoice(String choice) {
System.out.println("processing operator choice...");
System.out.println("operator choice is: " + choice);
invokeOperatorChoiceRules();
}
public static void invokeOperatorChoiceRules() {
try {
StatefulKnowledgeSession ksession =
createKnowledgeSession();
KnowledgeRuntimeLoggerFactory.newConsoleLogger(ksession);
// Fireing DISPATCH rule
Ticket ticket = new Ticket();
ticket.setStatus("NCPCOM");
ticket.setContent("testing content");
ticket.setStartTime(new Date());
ticket.setIdTicket(1);
ksession.insert(ticket);
MailManager mailManager = new MailManager();
ksession.insert(mailManager);
OperatorInterventionStateBean oi = new
OperatorInterventionStateBean();
oi.setCheckCashTask(true);
oi.setRestartTask(true);
ksession.insert(oi);
ksession.fireAllRules();
} catch (Throwable t) {
t.printStackTrace();
}
}
private static StatefulKnowledgeSession createKnowledgeSession() {
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory
.newKnowledgeBuilder();
kbuilder.add(
ResourceFactory.newClassPathResource(getDLRFileAssociated()),
ResourceType.DRL);
if (kbuilder.hasErrors()) {
if (kbuilder.getErrors().size() > 0) {
for (KnowledgeBuilderError kerror :
kbuilder.getErrors()) {
System.err.println(kerror);
}
}
}
KnowledgeBase kbase = ((KnowledgeBuilder)
kbuilder).newKnowledgeBase();
StatefulKnowledgeSession ksession =
kbase.newStatefulKnowledgeSession();
return ksession;
}
public static String getDLRFileAssociated() {
return DLRFileAssociated;
}
public void setDLRFileAssociated(String dLRFileAssociated) {
DLRFileAssociated = dLRFileAssociated;
}
}
error Msg:
13:00:11,197 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015876:
Starting deployment of "earExt2.ear"
13:00:11,383 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015876:
Starting deployment of "ocanaExt2.war"
13:00:11,384 INFO [org.jboss.as.server.deployment] (MSC service thread 1-1) JBAS015876:
Starting deployment of "ocana-coreExt2.jar"
13:00:11,729 WARN [org.jboss.as.server.deployment] (MSC service thread 1-7) JBAS015893:
Encountered invalid class name
'com.sun.faces.vendor.Tomcat6InjectionProvider:org.apache.catalina.util.DefaultAnnotationProcessor'
for service type 'com.sun.faces.spi.injectionprovider'
13:00:11,731 WARN [org.jboss.as.server.deployment] (MSC service thread 1-7) JBAS015893:
Encountered invalid class name
'com.sun.faces.vendor.Jetty6InjectionProvider:org.mortbay.jetty.plus.annotation.InjectionCollection'
for service type 'com.sun.faces.spi.injectionprovider'
13:00:11,890 INFO [org.jboss.as.jpa] (MSC service thread 1-8) JBAS011401: Read
persistence.xml for PU_OCANA
13:00:11,920 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC00001: Failed
to start service
jboss.deployment.subunit."earExt2.ear"."ocana-coreExt2.jar".POST_MODULE:
org.jboss.msc.service.StartException in service
jboss.deployment.subunit."earExt2.ear"."ocana-coreExt2.jar".POST_MODULE:
Failed to process phase POST_MODULE of subdeployment "ocana-coreExt2.jar" of
deployment "earExt2.ear"
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119)
[jboss-as-server-7.1.0.Final.jar:7.1.0.Final]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
[rt.jar:1.7.0]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
[rt.jar:1.7.0]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0]
*Caused by: java.lang.RuntimeException: Error getting reflective information for class
com.himilco.ocana.workflow.core.bo.OperatorBO with ClassLoader* ModuleClassLoader for
Module "deployment.earExt2.ear.ocana-coreExt2.jar:main" from Service Module
Loader
at
org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:70)
[jboss-as-server-7.1.0.Final.jar:7.1.0.Final]
at
org.jboss.as.ee.metadata.MethodAnnotationAggregator.runtimeAnnotationInformation(MethodAnnotationAggregator.java:58)
at
org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.handleAnnotations(InterceptorAnnotationProcessor.java:70)
at
org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.processComponentConfig(InterceptorAnnotationProcessor.java:117)
at
org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.deploy(InterceptorAnnotationProcessor.java:54)
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113)
[jboss-as-server-7.1.0.Final.jar:7.1.0.Final]
... 5 more
Caused by: java.lang.NoClassDefFoundError: org/drools/event/KnowledgeRuntimeEventManager
at java.lang.Class.getDeclaredFields0(Native Method) [rt.jar:1.7.0]
at java.lang.Class.privateGetDeclaredFields(Class.java:2308) [rt.jar:1.7.0]
at java.lang.Class.getDeclaredFields(Class.java:1760) [rt.jar:1.7.0]
at
org.jboss.as.server.deployment.reflect.ClassReflectionIndex.<init>(ClassReflectionIndex.java:57)
[jboss-as-server-7.1.0.Final.jar:7.1.0.Final]
at
org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:66)
[jboss-as-server-7.1.0.Final.jar:7.1.0.Final]
... 10 more
*Caused by: java.lang.ClassNotFoundException:
org.drools.event.KnowledgeRuntimeEventManager from [Module
"deployment.earExt2.ear.ocana-coreExt2.jar:main"* from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
[jboss-modules.jar:1.1.1.GA]
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
[jboss-modules.jar:1.1.1.GA]
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
[jboss-modules.jar:1.1.1.GA]
at
org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
[jboss-modules.jar:1.1.1.GA]
at
org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
[jboss-modules.jar:1.1.1.GA]
... 15 more
13:00:12,210 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870:
Deploy of deployment "earExt2.ear" was rolled back with failure message
{"JBAS014671: Failed services" =>
{"jboss.deployment.subunit.\"earExt2.ear\".\"ocana-coreExt2.jar\".POST_MODULE"
=> "org.jboss.msc.service.StartException in service
jboss.deployment.subunit.\"earExt2.ear\".\"ocana-coreExt2.jar\".POST_MODULE:
Failed to process phase POST_MODULE of subdeployment \"ocana-coreExt2.jar\" of
deployment \"earExt2.ear\""}}
13:00:12,210 INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015877:
Stopped deployment ocana-coreExt2.jar in 3ms
13:00:12,230 INFO [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015877:
Stopped deployment ocanaExt2.war in 19ms
13:00:12,231 INFO [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015877:
Stopped deployment earExt2.ear in 21ms
13:00:12,231 INFO [org.jboss.as.controller] (DeploymentScanner-threads - 2) JBAS014774:
Service status report
JBAS014777: Services which failed to start: service
jboss.deployment.subunit."earExt2.ear"."ocana-coreExt2.jar".POST_MODULE:
org.jboss.msc.service.StartException in service
jboss.deployment.subunit."earExt2.ear"."ocana-coreExt2.jar".POST_MODULE:
Failed to process phase POST_MODULE of subdeployment "ocana-coreExt2.jar" of
deployment "earExt2.ear"
13:00:12,231 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads -
1) {"JBAS014653: Composite operation failed and was rolled back. Steps that
failed:" => {"Operation step-2" => {"JBAS014671: Failed
services" =>
{"jboss.deployment.subunit.\"earExt2.ear\".\"ocana-coreExt2.jar\".POST_MODULE"
=> "org.jboss.msc.service.StartException in service
jboss.deployment.subunit.\"earExt2.ear\".\"ocana-coreExt2.jar\".POST_MODULE:
Failed to process phase POST_MODULE of subdeployment \"ocana-coreExt2.jar\" of
deployment \"earExt2.ear\""}}}}
*I'm using:*
*ide:eclipse 3.7 Indigo*
*AS:Jboss7*
*db:mysql 5*
*gui:JSF/PrimeFaces*
*bo:EJB3.1*
* Drools/jbpm 5.3*
--------------------------------------------------------------
Reply to this message by going to Community
[
https://community.jboss.org/message/728873#728873]
Start a new discussion in jBPM at Community
[
https://community.jboss.org/choose-container!input.jspa?contentType=1&...]