Are you sure the AgendaFilter is not causing the Technical Rule to be excluded?<br><br><div class="gmail_quote">On 29 October 2012 12:17, Manasi <span dir="ltr">&lt;<a href="mailto:manasi.a.damle@capgemini.com" target="_blank">manasi.a.damle@capgemini.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
How to call Technical rule assets stored in Guvnor from Java application?<br>
<br>
Currently I have one drl rule which is stored in Technical rule assets<br>
section.<br>
<br>
But I am not able to call it from my Java application.<br>
<br>
I am using following code to call my rules stored in Guvnor :<br>
<br>
UrlResource urlResource = (UrlResource)<br>
ResourceFactory.newUrlResource(<a href="http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/package/GuiKontrolKiss.FeltKnapRestriktionerKundeMedAnl/LATEST" target="_blank">http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/package/GuiKontrolKiss.FeltKnapRestriktionerKundeMedAnl/LATEST</a>&quot;);<br>

urlResource     .setBasicAuthentication(&quot;enabled&quot;);<br>
urlResource.setUsername(&quot;admin&quot;);<br>
urlResource.setPassword(&quot;admin&quot;);<br>
urlResource.setResourceType(ResourceType.PKG);<br>
<br>
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();<br>
try {<br>
        kbuilder.add(ResourceFactory.newInputStreamResource(urlResource<br>
                                        .getInputStream()), ResourceType.PKG);<br>
    } catch (IOException e) {<br>
                        e.printStackTrace();<br>
        }<br>
KnowledgeBase kbase = kbuilder.newKnowledgeBase();<br>
// create session<br>
StatefulKnowledgeSession session = kbase.newStatefulKnowledgeSession();<br>
NyssCaseSO caseSO = droolsRequest.getNyssCaseSO();<br>
NyssCaseStateSO caseState = caseSO.getNyssCaseStateSO();<br>
NyssOfferSO offerSO = droolsRequest.getNyssOfferSO();<br>
<br>
session.insert(caseSO);<br>
session.insert(offerSO);<br>
session.insert(caseState);<br>
<br>
AgendaFilter filter = new AgendaFilter() {<br>
        public boolean accept(Activation activation) {<br>
                if (activation.getRule().getName().contains(&quot;testDrl&quot;)) {<br>
                                return true;<br>
                }<br>
                return false;<br>
        }<br>
};<br>
session.fireAllRules(filter);<br>
<br>
for (Object o : session.getObjects()) {<br>
                if (o instanceof ResultSO) {<br>
                        ResultSO resultSO = (ResultSO) o;<br>
                        reply.setResultSO(resultSO);<br>
                }<br>
}<br>
session.dispose();<br>
<br>
With above I am able to call my rules stored in *&quot;Business rule assets&quot;*<br>
section.<br>
<br>
Thanks,<br>
Manasi<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://drools.46999.n3.nabble.com/Calling-Technical-rule-assets-in-Guvnor-tp4020537.html" target="_blank">http://drools.46999.n3.nabble.com/Calling-Technical-rule-assets-in-Guvnor-tp4020537.html</a><br>

Sent from the Drools: User forum mailing list archive at Nabble.com.<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>
</blockquote></div><br>