Hi,
When you execute:
kagent.applyChangeSet( ResourceFactory.newUrlResource("
http://localhost:8280/jboss-brms/org.drools.guvnor.Guvnor/Guvnor.html&quo...;
you need to point to your change-set.xml file and not to guvnor.
Inside you change-set you need to point to each resource you want the agent
take care of. In your example the first two resources have the same URL. It
doesn't look right.
Best,
2010/6/27 jillika iyer <jillika(a)gmail.com>
hi guys,
I am trying to upload my rules from jboss-brms to my eclipse in order to
run it against the working memory.
The following is my code and change-set.xml file and I am getting the
following error stack ( which is a java error but just attaching it for
giving more info).
I have started the jboss-server and it is connected correctly.
I am getting a java based error which says that it is unable to parse
change-set.xml and unable to connect to the server.
I just want to know if I am not the right path for creating the required
change-set.xml file due to which I am getting the java connection error.
I have just specified the url path in my change-set file and the types of
files it should be looking out for.
What else do I need to incorporate for it to connect to the server???
Please help me. I am relatively new to Drools.
Code in my Runner class:
KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
ResourceFactory.getResourceChangeScannerService().start();
ResourceFactory.getResourceChangeNotifierService().start();
// creating a knowledge agent
KnowledgeAgentConfiguration aconf =
KnowledgeAgentFactory.newKnowledgeAgentConfiguration();
KnowledgeAgent kagent = KnowledgeAgentFactory.newKnowledgeAgent(
"MyAgent", kbase,aconf );
kagent.applyChangeSet( ResourceFactory.newUrlResource("
http://localhost:8280/jboss-brms/org.drools.guvnor.Guvnor/Guvnor.html&quo...;
StatefulKnowledgeSession ksession =
kagent.getKnowledgeBase().newStatefulKnowledgeSession();
// StatelessSession workingMemory = ruleBase.newStatelessSession();
ArrayList<Ip> ipList = new ArrayList<Ip>();
ksession.setGlobal("ipList", ipList);
ksession.insert(al);
ksession.fireAllRules();
ksession.dispose();
my change-set.xml file:
<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.xsd' >
<add>
<!-- Add for specifying URLs-->
<resource source='http://localhost:8280/jboss-brms' type='DRL'
/>
<resource source='http://localhost:8280/jboss-brms' type='DSLR'
/>
<resource source='http://localhost:8280/jboss-brmss/sample-dsl.dsl'
type='DSL' />";
<resource source='http://localhost:8280/jboss-brms' type='BRL'
/>
</add>
</change-set>
error stack:
java.lang.RuntimeException: Unable to parse ChangeSet
at
org.drools.agent.impl.KnowledgeAgentImpl.getChangeSet(KnowledgeAgentImpl.java:223)
at
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:109)
at com.org.RuleRunner.runStatelessRules(RuleRunner.java:156)
at com.org.RulesTest.main(RulesTest.java:38)
Caused by: java.net.SocketException: Network is unreachable: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.Socket.connect(Socket.java:524)
at java.net.Socket.connect(Socket.java:474)
at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:388)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:523)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:231)
at sun.net.www.http.HttpClient.New(HttpClient.java:304)
at sun.net.www.http.HttpClient.New(HttpClient.java:321)
at
sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:839)
at
sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:791)
at
sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:716)
at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:960)
at
com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:973)
at
com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(XMLEntityManager.java:905)
at
com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startDTDEntity(XMLEntityManager.java:872)
at
com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.setInputSource(XMLDTDScannerImpl.java:282)
at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(XMLDocumentScannerImpl.java:1021)
at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
at
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
at
org.drools.xml.ExtensibleXmlParser.read(ExtensibleXmlParser.java:255)
at
org.drools.xml.ExtensibleXmlParser.read(ExtensibleXmlParser.java:170)
at org.drools.xml.XmlChangeSetReader.read(XmlChangeSetReader.java:48)
at
org.drools.agent.impl.KnowledgeAgentImpl.getChangeSet(KnowledgeAgentImpl.java:221)
... 3 more
Please help me.
Thank you
Jill
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Esteban Aliverti