[jboss-user] [jBPM] - Re: jBPM5.3 and EJB3

ous2k do-not-reply at jboss.com
Mon Apr 9 08:01:43 EDT 2012


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&containerType=14&container=2034]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20120409/a13ee57c/attachment-0001.html 


More information about the jboss-user mailing list