<br>URL[] urls = new URL[]{ new URL("file://"+path)<br><br>Are you using relative or absolute paths for classLoaders?<br><br>Did you check that the paths are valid when you deploy your application in Tomcat container?<br>
<br><br>Cheers,<br><br>Swapnil<br><br><div class="gmail_quote">2009/11/4 Hemanth kumar <span dir="ltr"><<a href="mailto:hemanth@saha.in">hemanth@saha.in</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im"><br>
swapnil thanx for the reply,<br>
this is my modified code<br>
<br>
try{<br>
<br>
System.out.println("Initializing Fact....");<br>
<br>
<br>
</div><div class="im"> URL[] urls = new URL[]{ new URL("file://"+path) };<br>
</div> ClassLoader loader = new URLClassLoader(urls);<br>
Class clazz = loader.loadClass("test.Message");<br>
<div class="im"> //Class.forName("test.Message", false, ucl);<br>
Object factObj = clazz.newInstance();<br>
String ruleFile = "test/Sample.drl";<br>
<br>
</div> Method method = clazz.getMethod("setMessage", new<br>
Class[]{String.class});<br>
<div class="im"> Method method1 = clazz.getMethod("getMessage");<br>
<br>
</div><div class="im"> //System.out.println("facts loaded\n");<br>
<br>
</div><div class="im"> method.invoke(factObj, new Object[]{"Hello"});<br>
<br>
System.out.println("initializing packageBuilder");<br>
<br>
PackageBuilderConfiguration config = new<br>
PackageBuilderConfiguration();<br>
config.setClassLoader(loader);<br>
<br>
KnowledgeBuilder kbuilder =<br>
KnowledgeBuilderFactory.newKnowledgeBuilder(config);<br>
<br>
System.out.println("finding Rule");<br>
<br>
kbuilder.add(ResourceFactory.newClassPathResource("test/Sample.drl"),ResourceType.DRL);<br>
<br>
if (kbuilder.hasErrors())<br>
throw new RuntimeException("Unable to compile rules. " +<br>
kbuilder.getErrors().toString());<br>
<br>
<br>
KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase(new<br>
RuleBaseConfiguration(loader));<br>
<br>
kbase.addKnowledgePackages(kbuilder.getKnowledgePackages());<br>
<br>
StatelessKnowledgeSession session =<br>
kbase.newStatelessKnowledgeSession();<br>
<br>
System.out.println("running rule....... \n");<br>
session.execute(factObj);<br>
<br>
System.out.println("\nend...\n");<br>
System.out.println(method1.invoke(factObj).toString());<br>
<br>
}<br>
</div><div class="im"> catch (Throwable t) {<br>
t.printStackTrace();<br>
}<br>
<br>
------------------------------------------------------------<br>
</div>Added the following JARS in WEB-INF\lib<br>
<br>
antlr-runtime-3.1.1.jar<br>
core-3.4.2.v_883_R34x.jar<br>
drools-api-5.0.1.jar<br>
drools-core-5.0.1.jar<br>
drools-decisiontables-5.0.1.jar<br>
mvel2-2.0.10.jar<br>
drools-compiler-5.0.1.jar<br>
xstream-1.3.1.jar<br>
<br>
<br>
<br>
thanx and regards<br>
Hemanth<br>
<font color="#888888">--<br>
View this message in context: <a href="http://old.nabble.com/Class-loader-problem-tp26160051p26191859.html" target="_blank">http://old.nabble.com/Class-loader-problem-tp26160051p26191859.html</a><br>
</font><div><div></div><div class="h5">Sent from the drools - user mailing list archive at Nabble.com.<br>
<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>
</div></div></blockquote></div><br>