Yap Poh Soon created CAMEL-8721:
-----------------------------------

             Summary: Idempotent unable to define property:CamelDuplicateMessage
                 Key: CAMEL-8721
                 URL: https://issues.apache.org/jira/browse/CAMEL-8721
             Project: Camel
          Issue Type: Bug
    Affects Versions: 2.15.1, 2.15.0
            Reporter: Yap Poh Soon


All works fine in Camel v2.14.2, and i wanted to upgrade because of the 
RabbitMq Priority and AWS S3 multiPartUpload support.

However, when using Camel 2.15.0 (or 2.15.1), the property configuration failed 
within the Idempotent EIP component. see below at "line 62"
{noformat}
<route id="consumeAdServerQueue" errorHandlerRef="dlc">
        <!-- receive work from a queue  -->
        <from 
uri="rabbitmq://localhost/adserver?queue=ad_google_dfa_reporting_queue&amp;routingKey=ad_google_dfa_reporting_queue&amp;declare=false&amp;autoAck=false&amp;prefetchEnabled=true&amp;prefetchCount=2&amp;concurrentConsumers=1"/>

        <idempotentConsumer messageIdRepositoryRef="memoryRepo" 
skipDuplicate="false">
                <!-- use the messageId header as key for identifying duplicate 
messages -->
                <header>messageId</header>
                <!-- we will to handle duplicate messages using a filter -->
                <filter>
                        <!-- the filter will only react on duplicate messages, 
if this property is set on the Exchange -->
<!--line 62 -->         <property>CamelDuplicateMessage</property>

                        <log message="duplicate request ${header.messageId}"/>
                        <!-- and then stop -->
                        <stop/>
                </filter>
                
                <to 
uri="rabbitmq://localhost/adserver?queue=ad_google_dfa_reporting_stage_queue&amp;routingKey=ad_google_dfa_reporting_stage_queue&amp;declare=false&amp;bridgeEndpoint=true"/>
                
        </idempotentConsumer>
</route>
{noformat}

With error:
{noformat}
[localhost-startStop-1] 16:43:19,716 ERROR 
org.springframework.web.context.ContextLoader - Context initialization failed
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: 
Configuration problem: Failed to import bean definitions from relative location 
[app-dfareporting-camel-context.xml]
Offending resource: ServletContext resource 
[/WEB-INF/spring/app-root-context.xml]; nested exception is 
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 62 
in XML document from ServletContext resource 
[/WEB-INF/spring/app-dfareporting-camel-context.xml] is invalid; nested 
exception is org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid 
content was found starting with element 'property'. One of 
'{"http://camel.apache.org/schema/spring":description, 
"http://camel.apache.org/schema/spring":expressionDefinition, 
"http://camel.apache.org/schema/spring":constant, 
"http://camel.apache.org/schema/spring":el, 
"http://camel.apache.org/schema/spring":exchangeProperty, 
"http://camel.apache.org/schema/spring":groovy, 
"http://camel.apache.org/schema/spring":header, 
"http://camel.apache.org/schema/spring":jxpath, 
"http://camel.apache.org/schema/spring":javaScript, 
"http://camel.apache.org/schema/spring":jsonpath, 
"http://camel.apache.org/schema/spring":language, 
"http://camel.apache.org/schema/spring":method, 
"http://camel.apache.org/schema/spring":mvel, 
"http://camel.apache.org/schema/spring":ognl, 
"http://camel.apache.org/schema/spring":php, 
"http://camel.apache.org/schema/spring":python, 
"http://camel.apache.org/schema/spring":ref, 
"http://camel.apache.org/schema/spring":ruby, 
"http://camel.apache.org/schema/spring":simple, 
"http://camel.apache.org/schema/spring":spel, 
"http://camel.apache.org/schema/spring":sql, 
"http://camel.apache.org/schema/spring":terser, 
"http://camel.apache.org/schema/spring":tokenize, 
"http://camel.apache.org/schema/spring":vtdxml, 
"http://camel.apache.org/schema/spring":xtokenize, 
"http://camel.apache.org/schema/spring":xpath, 
"http://camel.apache.org/schema/spring":xquery}' is expected.
        at 
org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
        at 
org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
        at 
org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:76)
        at 
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:272)
        at 
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:197)
        at 
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:182)
        at 
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:139)
        at 
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:108)
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493)
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
        at 
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)
        at 
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)
        at 
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)
        at 
org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125)
        at 
org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94)
        at 
org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
        at 
org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537)
        at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451)
        at 
org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389)
        at 
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294)
        at 
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112)
        at 
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)
        at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
        at 
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
        at 
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:670)
        at 
org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:662)
Caused by: 
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 62 
in XML document from ServletContext resource 
[/WEB-INF/spring/app-dfareporting-camel-context.xml] is invalid; nested 
exception is org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid 
content was found starting with element 'property'. One of 
'{"http://camel.apache.org/schema/spring":description, 
"http://camel.apache.org/schema/spring":expressionDefinition, 
"http://camel.apache.org/schema/spring":constant, 
"http://camel.apache.org/schema/spring":el, 
"http://camel.apache.org/schema/spring":exchangeProperty, 
"http://camel.apache.org/schema/spring":groovy, 
"http://camel.apache.org/schema/spring":header, 
"http://camel.apache.org/schema/spring":jxpath, 
"http://camel.apache.org/schema/spring":javaScript, 
"http://camel.apache.org/schema/spring":jsonpath, 
"http://camel.apache.org/schema/spring":language, 
"http://camel.apache.org/schema/spring":method, 
"http://camel.apache.org/schema/spring":mvel, 
"http://camel.apache.org/schema/spring":ognl, 
"http://camel.apache.org/schema/spring":php, 
"http://camel.apache.org/schema/spring":python, 
"http://camel.apache.org/schema/spring":ref, 
"http://camel.apache.org/schema/spring":ruby, 
"http://camel.apache.org/schema/spring":simple, 
"http://camel.apache.org/schema/spring":spel, 
"http://camel.apache.org/schema/spring":sql, 
"http://camel.apache.org/schema/spring":terser, 
"http://camel.apache.org/schema/spring":tokenize, 
"http://camel.apache.org/schema/spring":vtdxml, 
"http://camel.apache.org/schema/spring":xtokenize, 
"http://camel.apache.org/schema/spring":xpath, 
"http://camel.apache.org/schema/spring":xquery}' is expected.
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
        at 
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:256)
        ... 33 more
Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid 
content was found starting with element 'property'. One of 
'{"http://camel.apache.org/schema/spring":description, 
"http://camel.apache.org/schema/spring":expressionDefinition, 
"http://camel.apache.org/schema/spring":constant, 
"http://camel.apache.org/schema/spring":el, 
"http://camel.apache.org/schema/spring":exchangeProperty, 
"http://camel.apache.org/schema/spring":groovy, 
"http://camel.apache.org/schema/spring":header, 
"http://camel.apache.org/schema/spring":jxpath, 
"http://camel.apache.org/schema/spring":javaScript, 
"http://camel.apache.org/schema/spring":jsonpath, 
"http://camel.apache.org/schema/spring":language, 
"http://camel.apache.org/schema/spring":method, 
"http://camel.apache.org/schema/spring":mvel, 
"http://camel.apache.org/schema/spring":ognl, 
"http://camel.apache.org/schema/spring":php, 
"http://camel.apache.org/schema/spring":python, 
"http://camel.apache.org/schema/spring":ref, 
"http://camel.apache.org/schema/spring":ruby, 
"http://camel.apache.org/schema/spring":simple, 
"http://camel.apache.org/schema/spring":spel, 
"http://camel.apache.org/schema/spring":sql, 
"http://camel.apache.org/schema/spring":terser, 
"http://camel.apache.org/schema/spring":tokenize, 
"http://camel.apache.org/schema/spring":vtdxml, 
"http://camel.apache.org/schema/spring":xtokenize, 
"http://camel.apache.org/schema/spring":xpath, 
"http://camel.apache.org/schema/spring":xquery}' is expected.
        at 
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
        at 
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
        at 
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
        at 
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
        at 
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:423)
        at 
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3188)
        at 
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1812)
        at 
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:711)
        at 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2756)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:647)
        at 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
        at 
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
        at 
com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:232)
        at 
com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
        at 
org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75)
        at 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:388)
        ... 36 more
{noformat}





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to