[jboss-jira] [JBoss JIRA] (JBRULES-3630) ClassPathResources within ChangeSet are loaded using wrong ClassLoader
Mario Fusco (JIRA)
jira-events at lists.jboss.org
Mon Sep 24 09:43:35 EDT 2012
[ https://issues.jboss.org/browse/JBRULES-3630?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mario Fusco reassigned JBRULES-3630:
------------------------------------
Assignee: Mario Fusco (was: Mark Proctor)
> ClassPathResources within ChangeSet are loaded using wrong ClassLoader
> ----------------------------------------------------------------------
>
> Key: JBRULES-3630
> URL: https://issues.jboss.org/browse/JBRULES-3630
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: drools-core
> Affects Versions: 5.1.1.FINAL, 5.4.0.Final
> Environment: Win7 / Java6 / JBoss6
> Reporter: Chris Rankin
> Assignee: Mario Fusco
> Fix For: 5.4.1.Final, 5.5.0.Beta1
>
> Attachments: ResourceHandler.diff
>
>
> I am trying to load a "rules" JAR dynamically. This JAR contains a {{change-set.xml}} and all of its DRL files:
> {code: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 http://anonsvn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-api/src/main/resources/change-set-1.0.0.xsd'>
> <add>
> <resource source='classpath:com/my/stuff/rules/Stuff.drl' type='DRL' />
> </add>
> </change-set>
> {code}
> I am loading the JAR dynamically via {{URLClassLoader}} and _successfully_ creating the ChangeSet resource:
> {code}
> Resource changeSet = ResourceFactory.newClassPathResource("change-set.xml", classLoader);{code}
> However, it then always explodes when I try to add the resource to the {{KnowledgeBuilder}}, complaining that "'com/my/stuff/rules/Stuff.drl' cannot be opened because it does not exist".
> I am suspecting that the {{KnowledgeBuilder}} is not using my class loader to load {{Stuff.drl}}, despite me passing the correct class loader in via {{KnowledgeBuilderConfiguration}}. (And the "changeset:" handling in {{org.drools.xml.changeset.ResourceHandler}} would seem to support my theory.)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list