2008-12-04 120 views
0

我試圖運行駱駝示例「camel-example-spring-jms」(也在http://activemq.apache.org/camel/tutorial-jmsremoting.html)。 然而,當我嘗試使用「org.apache.camel.spring.Main」級開始駱駝,我得到的錯誤說無法啓動駱駝1.5.0

「配置問題:找不到春天NamespaceHandler XML模式命名空間[http://activemq.apache.org/schema/core]

[注:我能跑的例子就好了,當我使用Maven命令「MVN EXEC:JAVA -PCamelServer」]

是否有人可以幫助我瞭解什麼可能導致此。一個潛在的分辨率暗示不會傷害任何:)

++++++錯誤堆棧+++++

Dec 4, 2008 12:45:01 PM org.apache.camel.util.MainSupport doStart 
INFO: Apache Camel 1.5.0 starting 
Dec 4, 2008 12:45:01 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh 
INFO: Refreshing org[email protected]1ac3c08: display name [org[email protected]1ac3c08]; startup date [Thu Dec 04 12:45:01 EST 2008]; root of context hierarchy 
Dec 4, 2008 12:45:01 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions 
INFO: Loading XML bean definitions from file [C:\dev\camel-example-spring-jms\bin\META-INF\spring\camel-server-aop.xml] 
Dec 4, 2008 12:45:02 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions 
INFO: Loading XML bean definitions from file [C:\dev\camel-example-spring-jms\bin\META-INF\spring\camel-server.xml] 
Dec 4, 2008 12:45:03 PM org.apache.camel.util.MainSupport run 
SEVERE: Failed: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from relative location [camel-server.xml] 
Offending resource: file [C:\dev\camel-example-spring-jms\bin\META-INF\spring\camel-server-aop.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://activemq.apache.org/schema/core] 
Offending resource: file [C:\dev\camel-example-spring-jms\bin\META-INF\spring\camel-server.xml] 

org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from relative location [camel-server.xml] 
Offending resource: file [C:\dev\camel-example-spring-jms\bin\META-INF\spring\camel-server-aop.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://activemq.apache.org/schema/core] 
Offending resource: file [C:\dev\camel-example-spring-jms\bin\META-INF\spring\camel-server.xml] 

     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:201) 
     at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:147) 
     at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:132) 
     at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:92) 
     at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:507) 
     at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:398) 
     at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342) 
     at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310) 
     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143) 
     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178) 
     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149) 
     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:212) 
     at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:113) 
     at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:80) 
     at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123) 
     at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:423) 
     at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:353) 
     at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) 
     at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93) 
     at org.apache.camel.spring.Main.createDefaultApplicationContext(Main.java:189) 
     at org.apache.camel.spring.Main.doStart(Main.java:152) 
     at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:47) 
     at org.apache.camel.util.MainSupport.run(MainSupport.java:121) 
     at org.apache.camel.util.MainSupport.run(MainSupport.java:310) 
     at org.apache.camel.spring.Main.main(Main.java:72) 

++++++

回答

1

所以行家下正常工作 - 但是如果你運行它,怎麼辦?在你的IDE什麼的?

如果您使用eclipse/intellij,您可以使用maven爲maven項目創建一個IDE項目。

mvn eclipse:eclipse 

mvn idea:idea 

如果你正在寫一些shell腳本或命令行中運行它,然後它可能是你缺少一些瓶子;你需要春天+ jaxb + commons-logging +駱駝核心,駱駝春天和駱駝jms。

要獲得行家型

mvn dependency:tree 
0

當駱駝的JMS庫的.jar是不是在classpath這種特殊的異常引起了相關性的準確名單。正如詹姆斯所提到的那樣,運行時請確保這個庫在你的類路徑中是正確的。

0

我在使用駱駝時有類似的問題(雖然它是駱駝1.3)。在我的情況下錯誤是:

org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate NamespaceHandler for namespace [http://activemq.apache.org/camel/schema/spring] 

我能夠通過更改我的jdk版本來解決它。我正在使用JDK 1.5,我升級到1.6,並解決了我的問題。希望這可以幫助。

Monica

0

您正在使用哪個版本的JDK1.5?在Eclipse中與命令行使用不同的JDK嗎?

可能是JAXB沒有正確版本的問題。必須是JAXB 2.1或更新版本。

0

我在Eclipse和外部工具(Maven)中都遇到了同樣的問題。正如James和Pete指出的那樣,在classpath中添加camel-jms.jar,解決了我的問題。它看起來像駱駝核心和駝峯是基本的強制性依賴關係:

<dependency> 
    <groupId>org.apache.camel</groupId> 
    <artifactId>camel-core</artifactId> 
    <version>1.6.0</version> 
    <scope>compile</scope> 
</dependency> 

<dependency> 
    <groupId>org.apache.camel</groupId> 
    <artifactId>camel-jms</artifactId> 
    <version>1.6.0</version> 
    <scope>runtime</scope> 
</dependency>