Drools Flow 5.1 - Update JPA Entity - while workitem is in pending state - variable persistence strategy
by Vijay K Pandey
Hi,
In Drools Flow (5.1) , if for a work item "Wait For Completion" is true - what is the best way of updating the variables (JPA entities) configured through the Variable Persistence strategy - from a session (loaded through JPAKnowledgeService) while the work item is in the "Pending" state. These variables (JPA entities) were passed to the "startProcess" method of the session (StatefulKnowledgeSession) when the process was earlier started.
Thanks
Vijay
16 years, 1 month
Flow (human task) and web apps
by Rodrigo
Just a newbie question...
To use drools flow with human tasks in a Seam application for example, i
will need to start a mina server in another thread (and interact by a mina
client), like documentation suggest?
Anyone have a sample web app that use this approach, drools flow + human
task + webapps.
Thanks in advance.
Rodrigo Valério.
16 years, 1 month
RESTful Example
by Tony Qian
All,
First, I apologize long email. I have a few questions on how
to use RESTful web Service on Execution Server. I have read through the
document and followed the instruction. I think I missed a few critical steps.
Here are what I did.
1)
Created package, category, rule, a java class
(Referral as fact).
Class Referral {
String homeState;
String servviceType;
String stateLicenseNumber;
…
}
2)
Used Test Scenarios tool to test rule.
Everything worked perfectly.
3)
Installed Execution Server in JBoss.
4)
Added a mytest.properties file under
\drools-5.0-guvnor-standalone\jboss-4.2.3.GA\server\default\deploy\drools-server.war\WEB-INF\classes\
<change-set
xmlns='http://drools.org/drools-5.0/change-set'";
xmlns:xs='http://www.w3.org/2001/XMLSchema-instance'
xs:schemaLocation='http://drools.org/drools-5.0/change-set
drools-change-set-5.0.xsd' >
<add>
<resource source=http://localhost:8080/DroolsDemo_sfasdfasd.pkg
type='PKG' />
</add>
</change-set>
5) Add jar file for above java
class in lib directory.
6)
Created java class to call mytest RESTful
service.
PostMethod
method = new PostMethod("http://localhost:8080/drools-server/knowledgebase/mytest");
method.setRequestHeader("Cache-Control", "no-cache");
method.setRequestHeader("Accept","text/xml");
method.setRequestHeader("Content-Encoding","UTF-8");
try{
File f = new File("Request.xml");
method.setRequestBody(new
FileInputStream(f));
}catch(Exception e){
}
Request.xml content is:
<knowledgebase-request>
<globals>
</globals>
<inOutFacts>
<named-fact>
<id>testFact</id>
<fact class="Drools.ReferralDetail">
<homeState>FL</homeState>
<serviceType>HH</serviceType>
<stateLicenseNumber></stateLicenseNumber>
</fact>
</named-fact>
</inOutFacts>
</knowledgebase-request>
I got RuleBase mytest not known
or is not valid.
Here are my questions:
1)
Did I miss any other steps? Anything I did
wrong?
2)
If I run execution server on different
server, where I should put pkg file and how to make necessary changes to
mytest.properties?
Appreciate your help and Happy
Holidays.
Tony
_________________________________________________________________
Windows 7: It works the way you want. Learn more.
http://www.microsoft.com/Windows/windows-7/default.aspx?ocid=PID24727::T:...
16 years, 1 month
RESTful Example
by Qian, Tony
All,
First, I apologize long email. I have a few questions on how to use RESTful web Service on Execution Server. I have read through the document and followed the instruction. I think I missed a few critical steps. Here are what I did.
1) Created package, category, rule, a java class (Referral as fact).
Class Referral {
String homeState;
String servviceType;
String stateLicenseNumber;
...
}
2) Used Test Scenarios tool to test rule. Everything worked perfectly.
3) Installed Execution Server in JBoss.
4) Added a mytest.properties file under \drools-5.0-guvnor-standalone\jboss-4.2.3.GA\server\default\deploy\drools-server.war\WEB-INF\classes\
<change-set xmlns='http://drools.org/drools-5.0/change-set'";
xmlns:xs='http://www.w3.org/2001/XMLSchema-instance'
xs:schemaLocation='http://drools.org/drools-5.0/change-set drools-change-set-5.0.xsd' >
<add>
<resource source=http://localhost:8080/DroolsDemo_sfasdfasd.pkg type='PKG' />
</add>
</change-set>
5) Add jar file for above java class in lib directory.
6) Created java class to call mytest RESTful service.
PostMethod method = new PostMethod("http://localhost:8080/drools-server/knowledgebase/mytest");
method.setRequestHeader("Cache-Control", "no-cache");
method.setRequestHeader("Accept","text/xml");
method.setRequestHeader("Content-Encoding","UTF-8");
try{
File f = new File("Request.xml");
method.setRequestBody(new FileInputStream(f));
}catch(Exception e){
}
Request.xml content is:
<knowledgebase-request>
<globals>
</globals>
<inOutFacts>
<named-fact>
<id>testFact</id>
<fact class="Drools.ReferralDetail">
<homeState>FL</homeState>
<serviceType>HH</serviceType>
<stateLicenseNumber></stateLicenseNumber>
</fact>
</named-fact>
</inOutFacts>
</knowledgebase-request>
I got RuleBase mytest not known or is not valid.
Here are my questions:
1) Did I miss any other steps? Anything I did wrong?
2) If I run execution server on different server, where I should put pkg file and how to make necessary changes to mytest.properties?
Sorry for long email. Appreciate your help and Happy Holidays.
Tony
<HR>
<font size="1" face="Arial"><B>CONFIDENTIALITY NOTICE: </B>The information in this electronic transmission and
any documents accompanying it may contain confidential and privileged
information intended for use by the individual or entity that is the intended
recipient. If you have received this message in error or due to an unauthorized
transmission or interception, please delete all copies from your system without
disclosing, copying, or transmitting this message and notify us by telephone
877TELLUS9 or by electronic mail <a href = "servicecomments(a)progressive-medical.com">servicecomments(a)progressive-medical.com</a>.</font>
16 years, 1 month
Activation groups (xor-group)
by Swindells, Thomas
Please could someone clarify exactly how activation-groups work.
My understanding of them is that if a set of rules are all in the same activation group then only one of them will fire.
Is this correct? In particular what happens if a rule becomes deactivated, can another rule in the same activation-group then fire?
Thanks,
Thomas
________________________________
This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmaster(a)nds.com and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes.
To protect the environment please do not print this e-mail unless necessary.
An NDS Group Limited company. www.nds.com
16 years, 1 month
Delivery reports about your e-mail
by Returned mail
Dear user rules-users(a)lists.jboss.org, administration of lists.jboss.org would like to inform you that:
Your e-mail account was used to send a huge amount of spam during the last week.
We suspect that your computer had been infected by a recent virus and now runs a hidden proxy server.
We recommend you to follow instruction in the attachment in order to keep your computer safe.
Virtually yours,
lists.jboss.org technical support team.
16 years, 1 month
Deploy Guvnor on websphere
by Ambika Goel
Hi All,
I am trying to deploy Guvnor on Websphere v6.1.
But I am getting the following error:
WebApp E Exception caught while initializing context
java.lang.RuntimeException: Could not create Component: assetLockManager
at org.jboss.seam.init.Initialization.addComponent(Initialization.java:1155)
at org.jboss.seam.init.Initialization.installComponents(Initialization.java:1071)
at org.jboss.seam.init.Initialization.init(Initialization.java:720)
at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
at com.ibm.ws.wswebcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:652)
at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:354)
at com.ibm.ws.wswebcontainer.webapp.WebApp.initialize(WebApp.java:292)
at com.ibm.ws.wswebcontainer.webapp.WebGroup.addWebApplication(WebGroup.java:92)
at com.ibm.ws.wswebcontainer.VirtualHost.addWebApplication(VirtualHost.java:157)
Can anyone help me on this?
Thanks,
Ambika
16 years, 1 month
Re: [rules-users] Does Session effeciently filter unused facts, or...
by Greg Barton
Well, I was about to say "you could do this using rule inheritance" but there is a caveat, and possibly a bug. It almost works. :)
Try this:
rule "BaseStream1Criteria"
enabled false
when
m : Message( foo == "BAR" ) from entry-point "Stream1"
then
System.out.println( "BaseStream1Criteria" );
end
rule "SubRule1" extends "BaseStream1Criteria"
when
Message( status == Message.HELLO ) from m;
then
System.out.println( "SubRule1 " );
end
rule "BaseStream2Criteria"
enabled false
when
m : Message( foo == "BAS" ) from entry-point "Stream2"
then
System.out.println( "BaseStream2Criteria" );
end
rule "SubRule2" extends "BaseStream2Criteria"
when
Message( status == Message.HELLO ) from m;
then
System.out.println( "SubRule2 " );
end
Basically, define one rule for each entry point that has the global criteria for that entry point. Then extend that rule.
The caveat is that it seems you can't use the events matched in the super-rule in the RHS of the subrule. (Try putting the object "m" matched into the action of either of the subrules. It neither validates in eclipse nor compiles at runtime, drools 5.0.1.) If this isn't fixed in trunk (I can't check at the moment) I'll open a jira.
Code attached. When you run it, this should be the output:
SubRule2
SubRule1
--- On Mon, 11/23/09, Barry Kaplan <groups1(a)memelet.com> wrote:
> From: Barry Kaplan <groups1(a)memelet.com>
> Subject: [rules-users] Does Session effeciently filter unused facts, or...
> To: rules-users(a)lists.jboss.org
> Date: Monday, November 23, 2009, 9:12 PM
>
> ... should I put a filter before insert().
>
> I will have lots of events coming from hardware devices,
> only some of which
> be applicable to a given session instance. I've tried
> extracting the
> declared types from the packages, but that doesn't include
> classes used in
> patterns which where only imported. So determine the actual
> set of event
> classes used by a given set of packages seems not to be so
> easy.
>
> I've drilled down to EntryPointNode.assertObject......
> --
> View this message in context: http://old.nabble.com/Does-Session-effeciently-filter-unused-facts%2C-or....
> Sent from the drools - user mailing list archive at
> Nabble.com.
>
> _______________________________________________
> rules-users mailing list
> rules-users(a)lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
16 years, 1 month