Client code using RuleAgent API - Guvnor 5.1.1 - getting 401 error
by Achyutha, Venkata
Hi,
This error would be basic one but it's very frustrating to me to debug this, few days ago it use to work.
I deployed guvnor 5.1.1 war into web logic 10.3, created package with 4 rules, build and deploy, got package url.
Started using package url in properties file and passing file to RuleAgent api, suddenly it started giving HTTP response code: 401 for URL.
Any thoughts on this issue would be greatly appreciated.
Below is the content of properties file and Client code.
{url=http://10.117.39.51:7001/Guvnor5.1.1/org.drools.guvnor.Guvnor/package/com.tmobile.pos.rules/LATEST , name=myrules, username=weblogic, poll=30, newInstance=true, localCacheDir=C:\Installed\workspaces\drools\POC\bin, workspacepath=C://bea/user_projects/domains/posdomain, password=weblogic123, enableBasicAuthentication=true}
Error:
RuleAgent(myrules) INFO (Fri Nov 26 15:19:00 IST 2010): Configuring with newInstance=true, secondsToRefresh=30
RuleAgent(myrules) INFO (Fri Nov 26 15:19:00 IST 2010): Configuring package provider : URLScanner monitoring URLs: http://10.117.39.51:7001/Guvnor5.1.1/org.drools.guvnor.Guvnor/package/com... with local cache dir of C:\Installed\workspaces\drools\POC\bin
RuleAgent(myrules) EXCEPTION (Fri Nov 26 15:19:01 IST 2010): Server returned HTTP response code: 401 for URL: http://10.117.39.51:7001/Guvnor5.1.1/org.drools.guvnor.Guvnor/package/com.... Stack trace should follow.
java.io.IOException: Server returned HTTP response code: 401 for URL: http://10.117.39.51:7001/Guvnor5.1.1/org.drools.guvnor.Guvnor/package/com...
Client Code: (getting error at 3rd line)
File file = new File("C:\\guvnor.properties");
properties.load(new FileInputStream(file));
RuleAgent agent = RuleAgent.newRuleAgent(properties);
RuleBase ruleBase = agent.getRuleBase();
WorkingMemory workingMemory = ruleBase.newStatefulSession();
Thanks
Kumar
14 years, 7 months
Drools-Fusion : Inserting an Event in to an "entry-point" stream in the RHS of a rule?? Pls help
by Chetan Mahadev
Hi
Can we insert an Event in the RHS part of a rule to an entry-point?
basically i am trying to do this. Pls let me know if this is possible? if
not any alternative approaches? Any example would be useful pls
declare TransactionEvent
@role( event )
end
$tmp : TestClass()
$tmp.message == "TRUE"
then
TransactionEvent ev1 = new TransactionEvent (); // This should be
inserted in to an entry-pont "Temporal Reasoning" stream
ev1.setMessage("Temporal Reasoning")
insert (ev1) to entry-point "Temporal Reasoning"
end
rule "Temporal Reasoning"
$tmp : TransactionEvent ( message== "Temporal Reasoning") from entry-point
"Temporal Reasoning"
then
System.out.println("Rule fired due to entry point ");
end
Regds
Chetan
14 years, 8 months
Problem with Guvnor 5.1.1, <save> frequently does not save...
by David Shields
I have spent several days writing rules and tests for them in Guvnor, and
kept having strange results. A test would sometimes fail, repeatedly, and
then finally start working after I would delete and recreate some portion
of it, or change a value.
After two of us spent many hours trying to identify the extent of the
problem, we concluded the following:
1. The problem happens under both IE and Firefox.
2. The problem happens less frequently under Firefox if we install and
turn on a third-party plug-in which disables Firefox caching web pages.
3. Saving a new rule or test will allow us to work with it (edit - save -
test scenarios). However, frequently the rule or test will just disappear
once we log out.
4. A "Save" and "Check-in" will often work correctly if we cross our
fingers and do the following:
a. Save it once (the screen updates, and you can check the
version history)
b. Refresh the browser
c. Make the change again
d. Save it a second time
5. After doing a "Save" and "Check-in", you can immediately do a "view
source" and see your changes in place. However, if you then close the
test (or rule) and re-open it, you will often find that the change is
gone, and the test or rule looks like it did before you made the change.
A sample screenshot appears below. In this case, I created the test with
the "performedTime" set to 20-Sep-2008. I ran the test and it failed,
because the rule was checking for greater than or equal to 21-Sep-2008. I
then changed the date on the test to 21-Sep-2008, did a "save changes" and
a "Check-in", and then ran the scenario again.
As you can see below, the asserted object contains the date 20-Sep-2008,
even though the test clearly shows 21-Sep-2008.
Does anybody have any ideas on this? If I copy the above test into a new
test, it will often work the first time, but then it may disappear, once I
logout, even though it was saved and checked-in.
It almost seems like there is something wrong with the imbedded
repository, and / or the first running of the test created fact objects
that are persisting and being found the second time I ran the changed
test. ...
We are running the Final release of Drools Guvnor 5.1.1 found in
drools-5.1.1-guvnor.zip downloaded on 4-Sep-2010
We are running under Tomcat 6.0, with the recommended jar files replaced.
Thanks for your help!
--------------------------------------------------
David Shields
Division of Clinical Informatics
Department of Community and Family Medicine
Duke University Medical Center
Phone (864) 787-8551
14 years, 9 months
How to Access and Execute Rules from Database
by Ashish Soni
Hi All ,
I am able to configure oracle database in drools but now i am not able to
find how can i load rules from the DB and execute them , I gone through the
documentation but not able to get much information or might be i am missing
something.
If any one can provide me a example or some pointer ,hints then it would be
helpful.
Regards,
Ashish
14 years, 9 months
[Drools Flow 5.1] persistence + spring + localTransaction
by anton.litvinenko
Hi!
I am quite new to Drools and Drools Flow - please let me know if I am asking
something obvious here :)
I've implemented my custom WorkItemHandlers that are aware of the
KnowledgeSession. Now, I am trying to enable persistence to flows using
drools-persistence-jpa and drools-spring. Ideally, I wanted drools to start
and end transactions, but I wasn't able to achieve that (this is the
problem) and I have start/end transactions manually before
starting/aborting/signaling a process (i.e. running a process is a single
transaction -> if exception happens no state is persisted).
Problem: DroolsSpringTransactionManager has a flag localTransaction which is
set to true whenever a new transaction is started and transaction is
committed only if this flag is set to true. Now, if inside workItemHandler I
invoke a method on knowledgeSession, then my call is being delegated to
SingleSessionCommandService and it tries to start a transaction, but it sees
that there is a transaction already running and sets localTransaction flag
to false -> transaction never gets committed.
Am I doing something wrong here?
Thanks in advance!
Anton
--
View this message in context: http://drools.46999.n3.nabble.com/Drools-Flow-5-1-persistence-spring-loca...
Sent from the Drools: User forum mailing list archive at Nabble.com.
14 years, 10 months
Drools and mobile
by Leonardo Gomes
Since I'm really a noobie on mobile development, this may be a stupid
question, but it doesn't hurt to ask: Does anybody here ever used Drools on
a mobile application? Would its dependencies allow it to be run on an
Android or Blackberry?
Basically, my idea is that with the CEP stuff added on Drools 5, it would be
interesting to capture events generated by the device and do some analysis.
Waiting on your feedback :)
Thanks,
- Leonardo.
14 years, 11 months
Need help setting up Drools Server using Maven
by kkelleyjr
If it is not completely apparent by the subject line I am a complete noob to
Drools and Maven...
I have done a lot of reading and I think the Drools Server exposed through
soap will work for my design...
I have found some material to get me started, but I am perplexed by a very
simple issue...
Using Maven what archetype do I use to set-up the project... Using that
archetype how to set-up the packages under the archetype... And where do I
get the dependences for the drools server to set-up the server with spring
configuration... (Yes I am a noob to spring also)
I could hack at it and surely get some format to work... But I do not want
to find out later that the set-up does not grow with the project... So what
are some best practices... I have looked and can not find them or if I did
find them I am to much of a noob to understand them...
The project will have clients of the Drools Server service.
The project will have Java classes fired by the rules. These classes may
have to become exposed web services later, I just don't know yet...
Thanks for any advice, sorry for the noob post... I have just run out of
ideas to get this off the ground...
--
View this message in context: http://drools.46999.n3.nabble.com/Need-help-setting-up-Drools-Server-usin...
Sent from the Drools: User forum mailing list archive at Nabble.com.
14 years, 11 months
Use of StatelessKnowledgeSession
by aminmc
Hi there
I was wondering if someone might be able to help with what I am trying to
do. I have the following rule definition:
rule "open work item"
when
Task ( status == "OPEN")
then
insert(new Action("Take","take_task"));
insert(new Action("Complete","complete_task"));
insert(new Action("Close","close_task"));
end
Basically I want to insert a Task and then get back a list of Actions that
are available for the Task (based on the status. I have this working with a
statefulknowledgesession with the code:
List<Command> commands = new ArrayList<Command>();
for (Task task : tasks) {
commands.add(CommandFactory.newInsert(task));
}
session.execute(CommandFactory.newBatchExecution(commands));
session.fireAllRules();
session.dispose();
//this returns the actions
Collection objects = session.getObjects(new
ClassObjectFilter(Action.class));
I was wondering whether it is possible to do this with a
statelessknowledgesession instead? I could'nt see how to achieve this
without updating the task to include the actions.
Any help would be appreciated.
Cheers
--
View this message in context: http://drools.46999.n3.nabble.com/Use-of-StatelessKnowledgeSession-tp2828...
Sent from the Drools: User forum mailing list archive at Nabble.com.
14 years, 11 months