Very good, excellent even, and nearly working. This:

  <camelContext id="camel"
xmlns="http://activemq.apache.org/camel/schema/camel-1.0.xsd";>
    <endpoint id="endpoint1" uri="direct:start"/>
    <endpoint id="endpoint2" uri="mock:end"/>
    <route>
      <from ref="endpoint1"/>
      <choice>
        <when>
          <predicate>
            <header name="destination"/>
            <isEqualTo value="firstChoice"/>
          </predicate>
          <to ref="endpoint2"/>
        </when>
        <otherwise>
          <to ref="endpoint2"/>
        </otherwise>
      </choice>
    </route>
  </camelContext>

gives this:

Exception in thread "main"
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected
exception parsing XML document from class path resource
[endpointReference.xml]; nested exception is
org.apache.camel.spring.xml.IllegalActionException: Illegal route.The action
'to' cannot be used as the starting action.
Caused by: org.apache.camel.spring.xml.IllegalActionException: Illegal
route.The action 'to' cannot be used as the starting action.
        at
org.apache.camel.spring.xml.CamelBeanDefinitionParser.parseAction(CamelBeanDefinitionParser.java:161)
        at
org.apache.camel.spring.xml.CamelBeanDefinitionParser.parseBuilderElement(CamelBeanDefinitionParser.java:87)
        at
org.apache.camel.spring.xml.CamelBeanDefinitionParser.parseBuilderElement(CamelBeanDefinitionParser.java:92)
        at
org.apache.camel.spring.xml.CamelBeanDefinitionParser.parseBuilderElement(CamelBeanDefinitionParser.java:92)
        at
org.apache.camel.spring.xml.CamelBeanDefinitionParser.parseInternal(CamelBeanDefinitionParser.java:65)
        at
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.parse(AbstractBeanDefinitionParser.java:56)
        at
org.apache.camel.spring.xml.CamelNamespaceHandler$1.doParse(CamelNamespaceHandler.java:50)
        at
org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser.parseInternal(AbstractSingleBeanDefinitionParser.java:70)
        at
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.parse(AbstractBeanDefinitionParser.java:56)
        at
org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:69)
        at
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1114)
        at
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1104)
        at
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:133)
        at
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:90)
        at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:458)
        at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:353)
        at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303)
        at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:280)
        at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:131)
        at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:147)
        at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:173)
        at
org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:112)
        at
org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:79)
        at
org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:100)
        at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:298)
        at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91)
        at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75)
        at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65)
...



James.Strachan wrote:
> 
> On 5/3/07, dr.jeff <[EMAIL PROTECTED]> wrote:
>>
>>
>>   <camelContext id="camel"
>> xmlns="http://activemq.apache.org/camel/schema/camel-1.0.xsd";>
>>     <endpoint id="endpoint1" uri="mock:endpoint1"/>
>>     <routes>
>>     </routes>
>>   </camelContext>
>>
>> This looks good, but how do I use it?
>>
>> I've tried things like:
>>
>> <from uri="endpoint1"/> and <from uri="#endpoint1"/> and <from
>> endpoint="endpoint1"/> and <from endpoint="#endpoint1/>, but all of them
>> fail, mostly for different reasons (eg. #endpoint1 is not an NMTOKEN).
>>
>> Surely it's obvious, but I'm missing it?
> 
> Ah I'd not done that bit yet :) I'd done it so that you can refer to
> Endpoint instances as bean references inside a spring <property
> name="foo" ref="someName"/>.
> 
> I've just implemented this so that now the <from> and <to> can be used
> with the references
> 
> <from uri="theURI"/> or <from ref="theReference"/>
> 
> I've added a test case to show it in action...
> 
> http://svn.apache.org/repos/asf/activemq/camel/trunk/camel-spring/src/test/resources/org/apache/camel/spring/endpointReference.xml
> 
> Along the way I also removed the unnecesary <routes> element, so a
> context can look like
> 
> <camelContext>
>   <endpoint ... />
>   <endpoint ... />
> 
>   <route ... />
>   <route ... />
> </camelContext>
> 
> So you'll wanna so an 'svn up' of all of camel and try the new xsd etc.
> 
> -- 
> James
> -------
> http://macstrac.blogspot.com/
> 
> 

-- 
View this message in context: 
http://www.nabble.com/-camel--using-camel-spring-container-tf3663875s2354.html#a10306522
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to