Drools & jBPM Workshops : June : WDC NYC
by Mark Proctor
Only a week to go, and spaces are filling up fast. If you want to go,
register ASAP.
http://blog.athico.com/2012/06/drools-jbpm-workshops-june-wdc-nyc.html
----pasted from url---
JBoss BRMS (Drools and jBPM) Workshops
Drools 5, the upstream for JBoss BRMS, is a Business Logic integration
Platform, and provides a unified and integrated platform for Rules,
Workflow and Event Processing. It's been designed from the ground up so
that each aspect is a first class citizen, with no compromises. Drools
may be easily used with jBPM, a flexible business process management suite.
Want to learn more?
Join us for one of two complimentary full day, hands-on workshop on
Drools and jBPM, where we will cover:
* The ecosystem that encompasses the Drools open source project and
the JBoss BRMS
* Benefits of rules systems, business workflows, and specific challenges
* The history of rules systems, where they are going, and the current
state of the art
* Various features of the BRMS via a hands on demo
* BPMN 2.0 and the future of Business Process Management
Be prepared to work hands-on with the tools, meet the team behind the
engine, and have your questions answered. This event will give you
unparalleled access to industry-recognized leaders in the rules community.
There are two dates to choose from:
* Tuesday, June 19 2012 in New York City
<http://app.engage.redhat.com/e/er?s=1795&lid=1384&elq=d3d6d783acbc4c7382b...>
* Thursday, June 21, 2012 (Government focus) in Washington DC
<http://app.engage.redhat.com/e/er?s=1795&lid=5482&elq=d3d6d783acbc4c7382b...>
Speakers:
Jim Tyrrell
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Principle JBoss Solution Architect, Red Hat
Mark Proctor
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Drools Project Lead and Founder, Red Hat
Edson Tirelli
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Senior Software Engineer, Red Hat
Kris Verlaenen
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
jBPM Lead Engineer, Red Hat
Prakash Aradhya
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Senior Product Manager, Red Hat
/*Attendees are responsible for bringing their own laptop to this event.
Please make sure your laptop has the ability to copy files from a USB,
which will provide the software for the hands-on sessions, and have JDK
1.6 already installed./
Register now as space is limited. We look forward to seeing you there!
14 years
get new errors caused by KnowledgeBuilder.add()
by Sandeep Bandela
Hi,
I have rules (drl format strings) stored in a database column in a schema
like MyRules(rule_id integer, name text, rule text, enabled boolean ... )
I query the db to get them and iterate over the rows and add using
KnowledgeBuilder.add() using String.getBytes. (I dont want to move to
guvnor as of now)
some rules might have compilation errors, hence the
KnowledgeBuilder.hasErrors() is set to true.
those will not be added to the package by the PackageBuilder.
My problem is to log the error causing rule_id and the error message.
KnowledgeBuilderErrors dosent expose the internal errors list so that I
could see if any new errors are in the arraylist from the last time error
seen time and log them.
But only solution i could think of is using the low level api of using
DrlParser to pre-parse it to check for errors+log and add to the kBuilder
if its not failed.
is there any elegant way to do this?
I am using drools-5.2.0.final
--
Regards,
Sandeep Bandela.
14 years
Unification with logical or question
by bdolbeare
Can someone explain to me why these two rules behave differently? I expected
that the second rule would produce the same output as the first but it seems
to ignore the first half of the logical or expression. Is this because the
unification happens before the null checks occur?
declare Foo
name : String
item : Item
end
declare Item
id : long
end
rule "insert stuff"
when
then
Item item1 = new Item(1);
Foo foo1 = new Foo("foo1", item1);
insert(foo1);
Foo foo3 = new Foo("foo3", null);
insert(foo3);
end
rule "Unification Test Rule"
when
f : Foo ( item != null, $item := item )
f2 : (
Foo ( item == null )
or Foo ( $item := item )
)
then
System.out.println(String.format("%s Fired:\n\tFoo: %s\n\t%s",
kcontext.getRule().getName(), f, f2));
end
rule "Unification Test Rule 2"
salience -10
when
f : Foo ( item != null, $item := item )
f2 : Foo ( ( item == null ) || ( item != null && $item := item ) )
then
System.out.println(String.format("%s Fired:\n\tFoo: %s\n\t%s",
kcontext.getRule().getName(), f, f2));
end
Unification Test Rule Fired:
Foo: Foo( name=foo1, item=Item( id=1 ) )
Foo( name=foo3, item=null )
Unification Test Rule Fired:
Foo: Foo( name=foo1, item=Item( id=1 ) )
Foo( name=foo1, item=Item( id=1 ) )
Unification Test Rule 2 Fired:
Foo: Foo( name=foo1, item=Item( id=1 ) )
Foo( name=foo1, item=Item( id=1 ) )
--
View this message in context: http://drools.46999.n3.nabble.com/Unification-with-logical-or-question-tp...
Sent from the Drools: User forum mailing list archive at Nabble.com.
14 years
can't put formula on Guvnor screen
by zeeshan khan
Hi Team !
Earlier I sent this mail to rules-dev(a)lists.jboss.org. Mark
Proctor asked me to mail here so I am mailing here in the hope of reply.
Since yesterday only I started learning Drools with the help of
Google and *JBOSS DROOLS BUSINESS RULES pdf file*. I faced many problems to
understand the concept but now its going smooth. But the problem is
the *version
of PDF file of the book* and the *Govener version*. *Its quite different*.
I request you all to please provide me the latest version of PDF as I am
unable to find on net. The problem I am facing is to put the formula as
given in the screen shot in the book.
I am unable to put the *formula* as described in JBOSS DROOLS
BUSINESS RULES pdf file on page no. 102.....the formula is *salesValue-10
as the box is not capable of taking cahracters. *It is taking only integer.
Thanks in Advance for all the help and material !!!!
14 years
Guvnor Guided Editor
by Amrita Jain
Hi,
Does Guvnor provide capability to use expression editor in RHS (or then
clause)
If so, is there any setting I need to enable.
Also, I do see I can assign a formula, while modifying a field value of a
model.
But I cant enter any text in that box.
I am trying to do something like a.count = a.count+100*b.data in the action
clause.
Thanks!
14 years, 1 month
drools osgi issue
by jnorris
Hi All,
I'm trying to deploy web services wired to drools via spring into
servicemix. Everything seems to be installed and active. However, when I
deploy the application and spring tries to wire in the beans I get the
following exception:
13:46:26,359 | ERROR | ExtenderThread-1 | WaiterApplicationContextExecutor |
111 - org.springframework.osgi.extender - 1.2.1 | Unable to create
application context for [jbpm-services], unsatisfied dependencies: none
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected
exception parsing XML document from URL
[bundle://274.0:0/META-INF/spring/beans.xml]; nested exception is
*java.lang.NoClassDefFoundError: org/drools/event/DebugProcessEventListener*
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:412)[100:org.springframework.beans:3.0.7.RELEASE]
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)[100:org.springframework.beans:3.0.7.RELEASE]
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)[100:org.springframework.beans:3.0.7.RELEASE]
at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)[100:org.springframework.beans:3.0.7.RELEASE]
at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)[100:org.springframework.beans:3.0.7.RELEASE]
at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149)[100:org.springframework.beans:3.0.7.RELEASE]
at
org.springframework.osgi.context.support.OsgiBundleXmlApplicationContext.loadBeanDefinitions(OsgiBundleXmlApplicationContext.java:164)[108:org.springframework.osgi.core:1.2.1]
at
org.springframework.osgi.context.support.OsgiBundleXmlApplicationContext.loadBeanDefinitions(OsgiBundleXmlApplicationContext.java:136)[108:org.springframework.osgi.core:1.2.1]
at
org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)[102:org.springframework.context:3.0.7.RELEASE]
at
org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:467)[102:org.springframework.context:3.0.7.RELEASE]
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$800(AbstractDelegatedExecutionApplicationContext.java:69)[108:org.springframework.osgi.core:1.2.1]
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$3.run(AbstractDelegatedExecutionApplicationContext.java:269)[108:org.springframework.osgi.core:1.2.1]
at
org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)[108:org.springframework.osgi.core:1.2.1]
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.startRefresh(AbstractDelegatedExecutionApplicationContext.java:247)[108:org.springframework.osgi.core:1.2.1]
at
org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.stageOne(DependencyWaiterApplicationContextExecutor.java:214)[111:org.springframework.osgi.extender:1.2.1]
at
org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.refresh(DependencyWaiterApplicationContextExecutor.java:169)[111:org.springframework.osgi.extender:1.2.1]
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.refresh(AbstractDelegatedExecutionApplicationContext.java:175)[108:org.springframework.osgi.core:1.2.1]
at
org.springframework.osgi.extender.internal.activator.ContextLoaderListener$2.run(ContextLoaderListener.java:716)[111:org.springframework.osgi.extender:1.2.1]
at java.lang.Thread.run(Thread.java:662)[:1.6.0_24]
*Caused by: java.lang.NoClassDefFoundError:
org/drools/event/DebugProcessEventListener*
at
org.drools.container.spring.namespace.KnowledgeSessionDefinitionParser.parseInternal(KnowledgeSessionDefinitionParser.java:115)
at
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.parse(AbstractBeanDefinitionParser.java:59)
at
org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:73)
at
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1338)
at
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1328)
at
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:135)
at
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:93)
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493)
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)
... 18 more
*Caused by: java.lang.ClassNotFoundException:
org.drools.event.DebugProcessEventListener not found by org.drools.api
[232]*
at
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1467)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at
org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:73)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1850)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[:1.6.0_24]
at
org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1324)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at
org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1488)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1434)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at
org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:73)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1850)[org.apache.felix.framework-4.0.3.fuse-7-061.jar:]
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[:1.6.0_24]
... 27 more
The class in question is in the drools-core jar which is deployed. Steps
taken to deploy the drools/jbpm jars were as follows where each line is
entered at the karaf prompt:
osgi:install -s wrap:mvn:com.google.protobuf/protobuf-java/2.4.1
osgi:install -s wrap:mvn:org.antlr/antlr-runtime/3.3
osgi:install -s wrap:mvn:javax.persistence/persistence-api/1.0.2
osgi:install -s mvn:org.mvel/mvel2/2.1.0.drools16
osgi:install -s wrap:mvn:org.drools/drools-spring/5.4.0.Final
osgi:install -s mvn:org.drools/knowledge-api/5.4.0.Final
osgi:install -s mvn:org.drools/knowledge-internal-api/5.4.0.Final
osgi:install -s mvn:org.drools/drools-core/5.4.0.Final
osgi:install -s mvn:org.drools/drools-compiler/5.4.0.Final
osgi:install -s mvn:org.drools/drools-persistence-jpa/5.4.0.Final
osgi:install -s wrap:mvn:org.drools/drools-grid-impl/5.4.0.Final
osgi:install -s wrap:mvn:org.jbpm/jbpm-persistence-jpa/5.3.0.Final
osgi:install -s wrap:mvn:org.jbpm/jbpm-workitems/5.3.0.Final
osgi:install -s mvn:org.jbpm/jbpm-flow/5.3.0.Final
osgi:install -s mvn:org.jbpm/jbpm-flow-builder/5.3.0.Final
osgi:install -s mvn:org.jbpm/jbpm-bpmn2/5.3.0.Final
osgi:install -s wrap:mvn:org.jbpm/jbpm-human-task-core/5.3.0.Final
osgi:install -s wrap:mvn:org.jbpm/jbpm-human-task-mina/5.3.0.Final
osgi:install -s wrap:mvn:org.jbpm/jbpm-human-task-hornetq/5.3.0.Final
features:install spring-dm
features:install spring-jdbc
features:install spring-orm
features:install spring-aspects
osgi:install -s mvn:com.test.jbpm/jbpm-services/0.0.1-SNAPSHOT
Any ideas on how to get past this? Is this an export issue in the
drools-core jar?
Thanks,
Jim
--
View this message in context: http://drools.46999.n3.nabble.com/drools-osgi-issue-tp4017799.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
14 years, 1 month
JBPM fails to resume a rehydrated active process instance
by Alberto R. Galdo
Hi guys,
We are using JBPM 5 for long running processes in one of our products,
both, the knowledge session and WorkItemInfo & ProcessInstanceInfo are
persisted in a PostgreSQL database. Our processes involve a set of
automated tasks along with UserTasks handled inside JBPM's HumanTask
provided server ( the one that uses mina & JPA ).
For maintenance purposes, our application needs to be restarted once in
a while so we need our processes to keep running after a sucesful
rehydratation of the knowledge & JBPM contexts . We've tested a persistent
approach like this:
- We started our application and started several instances of a
process that involves at least one human task node.
- We've completed several human tasks in the current session and
things went ok, workitems got completed & processinstances desappeared as
processes came to and end.
- We left several human task in state"Ready" for our users to consume
afterwards.
- We restarted the application and let JBPM rehydrate it's context via
JPAKnowledgeService.loadStatefulKnowledgeSession()
Then we acquired and completed a "Ready" HumanTask, it got completed in
JBPM HumanTask server's database backend but the process attached never got
neither updater, nor its subsequent nodes were executed. This is weird.
We first tought it was a rehydratation problem and that the process
definition was not loaded properly, but what was our suprise when we've
been able to execute several new process instances wich we could complete
properly. So, seems that we are able to complete "current" ( as in the
current session, not the rehydrated ones ) process instances, but not able
to complete process instances that are not started in the "current" session
( the rehydrated ones ).
What's wrong here. Is it not possible to resume a process in a
rehydrated session when human tasks & JBPM's HumanTask server are involved?
Greets,
Alberto R. Galdo
argaldo(a)gmail.com
14 years, 1 month
Drools & jBPM Workshops : June : WDC NYC
by Mark Proctor
http://blog.athico.com/2012/06/drools-jbpm-workshops-june-wdc-nyc.html
----pasted from url---
JBoss BRMS (Drools and jBPM) Workshops
Drools 5, the upstream for JBoss BRMS, is a Business Logic integration
Platform, and provides a unified and integrated platform for Rules,
Workflow and Event Processing. It's been designed from the ground up so
that each aspect is a first class citizen, with no compromises. Drools
may be easily used with jBPM, a flexible business process management suite.
Want to learn more?
Join us for one of two complimentary full day, hands-on workshop on
Drools and jBPM, where we will cover:
* The ecosystem that encompasses the Drools open source project and
the JBoss BRMS
* Benefits of rules systems, business workflows, and specific challenges
* The history of rules systems, where they are going, and the current
state of the art
* Various features of the BRMS via a hands on demo
* BPMN 2.0 and the future of Business Process Management
Be prepared to work hands-on with the tools, meet the team behind the
engine, and have your questions answered. This event will give you
unparalleled access to industry-recognized leaders in the rules community.
There are two dates to choose from:
* Tuesday, June 19 2012 in New York City
<http://app.engage.redhat.com/e/er?s=1795&lid=1384&elq=d3d6d783acbc4c7382b...>
* Thursday, June 21, 2012 (Government focus) in Washington DC
<http://app.engage.redhat.com/e/er?s=1795&lid=5482&elq=d3d6d783acbc4c7382b...>
Speakers:
Jim Tyrrell
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Principle JBoss Solution Architect, Red Hat
Mark Proctor
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Drools Project Lead and Founder, Red Hat
Edson Tirelli
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Senior Software Engineer, Red Hat
Kris Verlaenen
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
jBPM Lead Engineer, Red Hat
Prakash Aradhya
<http://app.engage.redhat.com/e/er?s=1795&lid=5483&elq=d3d6d783acbc4c7382b...>,
Senior Product Manager, Red Hat
/*Attendees are responsible for bringing their own laptop to this event.
Please make sure your laptop has the ability to copy files from a USB,
which will provide the software for the hands-on sessions, and have JDK
1.6 already installed./
Register now as space is limited. We look forward to seeing you there!
14 years, 1 month