You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Ronny Aerts (JIRA)" <ji...@apache.org> on 2017/05/13 11:25:04 UTC

[jira] [Created] (CAMEL-11273) ReloadStrategySupport does take changed routeContext files into account

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)