Hi,
HonorGod wrote:
I am getting the following error while accessing decision tables that
were
uploaded in Guvnor -
java.lang.RuntimeException: KnowledgeAgent exception while trying to
deserialize KnowledgeDefinitionsPackage
at
org.drools.agent.impl.KnowledgeAgentImpl.rebuildResources(KnowledgeAgentImpl.java:418)
.
.
.
This is not a valid package, should be
"package/CorporateAction/LATEST"
instead of
"package*s*/CorporateAction/"
'LATEST' is the name of your latest build, it could be also a snapshot.
Cheers,
Jarek
at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown
Source)
at org.drools.io.impl.UrlResource.getInputStream(UrlResource.java:76)
at
org.drools.agent.impl.KnowledgeAgentImpl.rebuildResources(KnowledgeAgentImpl.java:407)
... 6 more
----------------
Java Code
private StatefulKnowledgeSession getSession() {
LogUtil.caRecommendationLogger.info("Getting session for Rules
Engine ...");
// Set the interval on the ResourceChangeScannerService if you are
to use it
// and default of 60s is not desirable.
final ResourceChangeScannerConfiguration sconf =
ResourceFactory.getResourceChangeScannerService().newResourceChangeScannerConfiguration();
// set the disk scanning interval to 30s, default is 60s
sconf.setProperty("drools.resource.scanner.interval", "30");
ResourceFactory.getResourceChangeScannerService().configure(sconf);
knowledgeBaseFromDecisionTable =
KnowledgeBaseFactory.newKnowledgeBase();
final KnowledgeAgentConfiguration aconf =
KnowledgeAgentFactory.newKnowledgeAgentConfiguration();
// we want to scan directories, not just files, turning this on
turns on file
// scanning
aconf.setProperty("drools.agent.scanDirectories", "true");
// resource changes results in a new instance of the KnowledgeBase
being
// built, this cannot currently be set to false for incremental
building
aconf.setProperty("drools.agent.newInstance", "true");
final KnowledgeAgent kagent =
KnowledgeAgentFactory.newKnowledgeAgent("kagent",
knowledgeBaseFromDecisionTable, aconf);
kagent.applyChangeSet(ResourceFactory.newClassPathResource("changeset.xml"));
//kagent.applyChangeSet(ResourceFactory.newFileResource("c:/changeset.xml"));
return kagent.getKnowledgeBase().newStatefulKnowledgeSession();
}
-----------------
changeset.xml
<?xml version="1.0" encoding="UTF-8"?>
<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/drools-guvnor/org.drools.guvnor.Guvnor/packages/CorporateAction/'
type='PKG' />
</add>
</change-set>
Please help.
Thanks!