[jboss-jira] [JBoss JIRA] (JBRULES-3630) Nested ClassPathResources within ChangeSet use wrong ClassLoader

Chris Rankin (JIRA) jira-events at lists.jboss.org
Wed Sep 19 11:32:37 EDT 2012


Chris Rankin created JBRULES-3630:
-------------------------------------

             Summary: Nested ClassPathResources within ChangeSet use 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.4.0.Final, 5.1.1.FINAL
         Environment: Win7 / Java6 / JBoss6
            Reporter: Chris Rankin
            Assignee: Mark Proctor


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