Could you please provide us the line number where de ClassNotFoundException occurs. I think I know what could be happening. When you use incremental change set processing (newInstance = false), the agent use a kbuilder to perform some diff between the modified and original resource. The thing is that the agent always instantiate a kbuilder even if all the resources are already compiled (which is useless).<div>
<br></div><div>Please provide me the line number of the exception, i will start working on this issue. Meanwhile, as a workaround, add the drools-compiler dependency. </div><div>The KAgent was practically rebuilt from scratch since 5.1M1 so these kind of error were expected ;)</div>
<div><br></div><div>Best,</div><div><br><br><div class="gmail_quote">2010/7/1 Jeffrey Schneller <span dir="ltr"><<a href="mailto:jeffrey.schneller@envisa.com">jeffrey.schneller@envisa.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">As a follow-up, this did work however there are still some
problems. The rules did get pulled into the application and seem to be
running but clearly something is not right.</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">I needed to include the drools-compiler.jar in my app otherwise
I was getting a ClassNotFoundException. I am pulling a compiled package
from the Guvnor so not sure why I need the compiler jar in my app.</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">When the rules are pulled into the app I am getting the
exception thrown which is being logged and the app can continue running: </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal" style="text-indent:.5in"><span style="font-size:11.0pt;color:#1F497D">2010-07-01 00:36:14,201 |
INFO (MyDroolsListener.java:41) KnowledgeAgent performing an incremental build
of the ChangeSet</span></p>
<p class="MsoNormal" style="text-indent:.5in"><span style="font-size:11.0pt;color:#1F497D">2010-07-01 00:36:14,261 |
ERROR (MyDroolsListener.java:30) java.lang.RuntimeException: KnowledgeAgent
exception while trying to deserialize KnowledgeDefinitionsPackage </span></p>
<p class="MsoNormal" style="margin-left:.5in"><span style="font-size:11.0pt;color:#1F497D">2010-07-01 00:36:14,261 |
WARN (MyDroolsListener.java:53) KnowledgeAgent: The resource didn't create any
package: [UrlResource path='<a href="http://ruleserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST" target="_blank">http://ruleserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST</a>']</span></p>
<p class="MsoNormal" style="text-indent:.5in"><span style="font-size:11.0pt;color:#1F497D">2010-07-01 00:36:14,271 |
INFO (MyDroolsListener.java:41) KnowledgeAgent incremental build of
KnowledgeBase finished and in use</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Then if I rebuild the package in the Guvnor then I see the
following [the two lines are repeated for each rule in the package]:</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">[2010:07:182 00:07:741:debug] BinaryResourceDiffProducerImpl:
Comparing [Rule name=v_32, agendaGroup=MAIN, salience=0, no-loop=false] against
[Rule name=v_32, agendaGroup=MAIN, salience=0, no-loop=false]</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">[2010:07:182 00:07:741:debug] BinaryResourceDiffProducerImpl:
The rules have different LHS</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Thanks</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt">From:</span></b><span style="font-size:10.0pt"> <a href="mailto:rules-users-bounces@lists.jboss.org" target="_blank">rules-users-bounces@lists.jboss.org</a>
[mailto:<a href="mailto:rules-users-bounces@lists.jboss.org" target="_blank">rules-users-bounces@lists.jboss.org</a>] <b>On Behalf Of </b>Esteban
Aliverti<br>
<b>Sent:</b> Wednesday, June 30, 2010 6:35 PM</span></p><div><div></div><div class="h5"><br>
<b>To:</b> Rules Users List<br>
<b>Subject:</b> Re: [rules-users] Drools and Guvnor 5.1M2 - Exception
beingthrownin processChangeSet</div></div><p></p>
</div><div><div></div><div class="h5">
<p class="MsoNormal"> </p>
<p class="MsoNormal">The problem seams to happen because the kagent can't access
the url. </p>
<div>
<p class="MsoNormal">If you try to access the change set xml using a browser,
does the browser ask you for authentication? I don't know why, but guvnor
protect its urls since 5.1 I think. </p>
</div>
<div>
<p class="MsoNormal">So, basically, the error is that guvnor can't read from the
url. The same error happens if you provide a non existent url. I need to open a
jira for this.</p>
</div>
<div>
<p class="MsoNormal">As a work around, try doing this:</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"><change-set
xmlns='<a href="http://drools.org/drools-5.0/change-set" target="_blank"><span style="color:#074D8F">http://drools.org/drools-5.0/change-set</span></a>'</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">
xmlns:xs='<a href="http://www.w3.org/2001/XMLSchema-instance" target="_blank"><span style="color:#074D8F">http://www.w3.org/2001/XMLSchema-instance</span></a>'</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">
xs:schemaLocation='<a href="http://drools.org/drools-5.0/change-setdrools-change-set-5.0.xsd" target="_blank"><span style="color:#074D8F">http://drools.org/drools-5.0/change-set
drools-change-set-5.0.xsd</span></a>' ></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">
<add></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">
<resource basicAuthentication='enabled' username='admin' password='admin'
source='<a href="http://ruleserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST" target="_blank"><span style="color:#074D8F">http://ruleserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST</span></a>'
type='PKG' /></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">
</add></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"></change-set></span></p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal"><br>
Remember to replace username and password.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">Best,</p>
</div>
<div>
<p class="MsoNormal"> </p>
<div>
<p class="MsoNormal">2010/6/30 Jeffrey Schneller <<a href="mailto:jeffrey.schneller@envisa.com" target="_blank">jeffrey.schneller@envisa.com</a>></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Here is the xml file I am getting:</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"><change-set xmlns='<a href="http://drools.org/drools-5.0/change-set" target="_blank">http://drools.org/drools-5.0/change-set</a>'</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> xmlns:xs='<a href="http://www.w3.org/2001/XMLSchema-instance" target="_blank">http://www.w3.org/2001/XMLSchema-instance</a>'</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> xs:schemaLocation='<a href="http://drools.org/drools-5.0/change-setdrools-change-set-5.0.xsd" target="_blank">http://drools.org/drools-5.0/change-set
drools-change-set-5.0.xsd</a>' ></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> <add></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">
<resource source='<a href="http://ruleserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST" target="_blank">http://ruleserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST</a>'
type='PKG' /></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </add></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"></change-set></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt">From:</span></b><span style="font-size:10.0pt"> <a href="mailto:rules-users-bounces@lists.jboss.org" target="_blank">rules-users-bounces@lists.jboss.org</a>
[mailto:<a href="mailto:rules-users-bounces@lists.jboss.org" target="_blank">rules-users-bounces@lists.jboss.org</a>]
<b>On Behalf Of </b>Esteban Aliverti<br>
<b>Sent:</b> Wednesday, June 30, 2010 3:18 PM<br>
<b>To:</b> Rules Users List<br>
<b>Subject:</b> Re: [rules-users] Drools and Guvnor 5.1M2 - Exception being
thrownin processChangeSet</span></p>
</div>
<div>
<div>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Could
you please post the xml file you are getting from <span style="font-size:10.0pt"><a href="http://rulerserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST/ChangeSet.xml" target="_blank"><span style="color:#074D8F">http://rulerserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST/ChangeSet.xml</span></a>?</span></p>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Best,</p>
<div>
<p class="MsoNormal">2010/6/30
Jeffrey Schneller <<a href="mailto:jeffrey.schneller@envisa.com" target="_blank">jeffrey.schneller@envisa.com</a>></p>
<div>
<div>
<p class="MsoNormal">I
am trying to upgrade to the 5.1M2 build from 5.0.1 and am running into some
issues. I have installed the new 5.1 Guvnor and imported the rules from
my 5.0.1 Guvnor instance. </p>
<p class="MsoNormal">I
then removed the old 5.0.1 drools jars from my app and replaced them with the
5.1M2 drools jars. I was also added all the dependent libraries.
The code that worked with the 5.0.1 version does not work with the 5.1M2
version. In 5.0.1 I was constructing the xml and streaming it into the
applyChangeSet method. With 5.1M2 I am just pointing to the change set
xml file that is in the Guvnor. </p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">I
am seeing a NullPointerException being thrown in the processChangeSet
method as shown below.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Caused
by: java.lang.NullPointerException</p>
<p class="MsoNormal">
at org.drools.agent.impl.KnowledgeAgentImpl.processChangeSet(KnowledgeAgentImpl.java:171)</p>
<p class="MsoNormal">
at
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:143)</p>
<p class="MsoNormal">
at org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:130)</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Did
I miss something? Am I doing something wrong? Below is the code
that I have.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">
KnowledgeAgentConfiguration kaconf =
KnowledgeAgentFactory.newKnowledgeAgentConfiguration();</p>
<p class="MsoNormal">
kaconf.setProperty( "drools.agent.scanDirectories",
"true" ); </p>
<p class="MsoNormal">
kaconf.setProperty("drools.agent.newInstance",
"false");</p>
<p class="MsoNormal">
</p>
<p class="MsoNormal">
ResourceFactory.getResourceChangeScannerService().start();</p>
<p class="MsoNormal">
ResourceFactory.getResourceChangeNotifierService().start();</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">
String url = "<a href="http://rulerserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST/ChangeSet.xml" target="_blank">http://rulerserver/drools-guvnor/org.drools.guvnor.Guvnor/package/my.rule.package/LATEST/ChangeSet.xml</a>";</p>
<p class="MsoNormal">
</p>
<p class="MsoNormal">
KnowledgeAgent kagent = KnowledgeAgentFactory.newKnowledgeAgent(
"Configuration", kaconf );</p>
<p class="MsoNormal">
kagent.setSystemEventListener(new MyDroolsListener());</p>
<p class="MsoNormal" style="text-indent:.5in">try {</p>
<p class="MsoNormal">
kagent.applyChangeSet(ResourceFactory.newUrlResource(new URL(url)));
// ERROR IS OCCURING INSIDE OF applyChangeSet</p>
<p class="MsoNormal">
} catch (MalformedURLException e) {</p>
<p class="MsoNormal">
e.printStackTrace();</p>
<p class="MsoNormal">
}</p>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a></p>
</div>
<p class="MsoNormal"><br>
<br clear="all">
<br>
-- <br>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<br>
<br>
Esteban Aliverti</p>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a></p>
</div>
<p class="MsoNormal"><br>
<br clear="all">
<br>
-- <br>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<br>
<br>
Esteban Aliverti</p>
</div>
</div></div></div>
</div>
<br>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<br><br>Esteban Aliverti<br>
</div>