[
https://issues.apache.org/jira/browse/CAMEL-14969?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nenad Nesovanovic updated CAMEL-14969:
--------------------------------------
Comment: was deleted
(was: Hi [~davsclaus], my take is that this is the primary reason that for
years Camel had issues with running multiple Camel Contexts in the same JVM.
Because Route Definition objects are compared by reference instead of URI, and
each Context with have its own autonumbering, you would be much more likely to
detect duplicates this way, which would cause phantom errors. Hence route
definition comparison has to include Camel Context ID and URI ID in addition to
the Route Definition ID, instead of using only Java Object ID as it is done
currently. Changing this would require significant framework changes, so I
opted to report this as an issue, instead of fixing it myself.)
> Failed to start route [A] because of duplicate id detected: [B]
> ---------------------------------------------------------------
>
> Key: CAMEL-14969
> URL: https://issues.apache.org/jira/browse/CAMEL-14969
> Project: Camel
> Issue Type: Bug
> Components: camel-spring-boot
> Affects Versions: 3.2.0
> Reporter: Nenad Nesovanovic
> Assignee: Claus Ibsen
> Priority: Major
> Fix For: 3.3.0
>
> Attachments: CAMEL-14969-Eclipse-Project.zip,
> eclipse1_compare_by_ref.PNG, eclipse2_causes_duplicate.PNG,
> eclipse3-two-routes.PNG, eclipse4-comparison-conflict.PNG,
> eclipse5-comparison-conflict.PNG, trace_log1.zip, trace_log2.zip
>
>
> When loading rest definitions via "xml-rests" path defined in property
> {quote}{color:#403294}camel.springboot.xml-rests =
> classpath:folder-camel/folder-rest/*.xml{color}
> {quote}
> The camel 3.2 fails with error
> {quote}{color:#de350b}Failed to start route first-test-get-id because of
> duplicate id detected: first-test-to-id. Please correct ids to be unique
> among all your routes.{color}
> {quote}
> My rest XML file is defined as
> {{<?xml version="1.0" encoding="UTF-8"?><?xml version="1.0"
> encoding="UTF-8"?>}}
> {{<rests xmlns="http://camel.apache.org/schema/spring"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"}}
> {{ xsi:schemaLocation="}}
> {{ http://camel.apache.org/schema/spring
> https://camel.apache.org/schema/spring/camel-spring-3.2.0.xsd}}
> {{ ">}}
> {{ <rest id="id1" path="/test">}}
> {{ <get id="id2" uri="/folderuri">}}
> {color:#de350b}{{ <to id="id3" uri="log:test-nexus-rest" />}}{color}
> {{ </get>}}
> {{ </rest>}}
> {{</rests>}}
> However, when I envelope TO tag in the ROUTE tag, the issue gets resolved
> {{<rest id="id1" path="/test">}}
> {{<get id="id2" uri="/folderuri">}}
> {{{color:#4c9aff}<route id="id4">{color}}}
> {{{color:#de350b}<to id="id3" uri="log:test-nexus-rest" />{color}}}
> {{{color:#4c9aff}</route>{color}}}
> {{</get>}}
> {{</rest>}}
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)