Ronny Aerts created CAMEL-11273:
-----------------------------------

             Summary: ReloadStrategySupport does take changed routeContext 
files into account
                 Key: CAMEL-11273
                 URL: https://issues.apache.org/jira/browse/CAMEL-11273
             Project: Camel
          Issue Type: New Feature
          Components: camel-core
    Affects Versions: 2.19.0
            Reporter: Ronny Aerts


I saw in the camel 2.19.0 release notes that xml routes could be reloaded 
automatically which woke my interest (since we only use xml routes and no java 
at all). I tried it by specifying the fileWatcherDirectory in my pom.xml (in 
the camel-maven-plugin configuration) and it worked fine for me. I ran it from 
within eclipse.
The point is that our camelcontext only holds routeContextRef entries and no 
real routes. I tried again by specifying the location src/main/resources (where 
the routecontext files are) but this does not seem to work, no updates are 
seen. 

Claus point me to look in the source code and I saw that 
ReloadStrategySupport.java holds line 76:
{code}
dom = XmlLineNumberParser.parseXml(new ByteArrayInputStream(xml.getBytes()), 
null, "camelContext,routes", "http://camel.apache.org/schema/spring";);
{code}
which means that routes from a routeContext are NOT reloaded. 

This could be solved by changing the line to:
{code}
dom = XmlLineNumberParser.parseXml(new ByteArrayInputStream(xml.getBytes()), 
null, "camelContext,routes,routeContext", 
"http://camel.apache.org/schema/spring";);
{code}




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to