javascript
apache camel_在WildFly中将Apache Camel和Spring添加为jboss模块
apache camel
這些天,我在玩Wildfly , Apache Camel和Spring 。
在EAR / WAR之間進行通信的一種簡單方法是使用Camel的direct-vm組件。 有或沒有駱駝,有很多方法可以實現(xiàn)這一目標。 駱駝在WildFly中就像一個飾物,不需要任何額外的配置。 駱駝很棒!!!
為了避免將Spring和Camel所需的所有JAR打包到我的應用程序中,我使用出色的JBoss Modules框架(WildFly已經(jīng)使用過)創(chuàng)建了兩個模塊。 然后,我可以引用這兩個框架,而無需在應用程序(EAR / WAR)中打包所有這些JAR。
創(chuàng)建Spring模塊
- 轉(zhuǎn)到WildFly主頁目錄: $> cd /home/torun/jboss/wildfly/wildfly-8.0.0.Beta1
- 創(chuàng)建Spring模塊目錄結(jié)構(gòu):
- $> mkdir -p modules / org / springframework / 3.2.5.RELEASE
- 在這個新目錄中,創(chuàng)建具有以下內(nèi)容的module.xml文件:
- 然后在此新目錄內(nèi)添加所有提到為“ resource-root”的JAR。
- 您已經(jīng)完成了Spring模塊!!!
- 現(xiàn)在,您可以在EAR / WAR中使用“ jboss-deployment-structure.xml”中的下一行來引用spring模塊:
- <module name =” org.springframework” slot =“ 3.2.5.RELEASE” />
創(chuàng)建駱駝模塊
- 創(chuàng)建駱駝模塊目錄結(jié)構(gòu):
- $> mkdir -p modules / org / apache / camel / 2.12.1
- 在這個新目錄中,創(chuàng)建具有以下內(nèi)容的module.xml文件:
- 然后在此新目錄內(nèi)添加所有提到為“ resource-root”的JAR。
- 您已經(jīng)與駱駝模塊一起完成了!!!
- 現(xiàn)在,您可以在EAR / WAR中使用“ jboss-deployment-structure.xml”中的下一行來引用駱駝模塊:
- <module name =“” org.apache.camel” slot =” 2.12.1” />
您可以從Spring或Camel模塊中刪除一些jar依賴項,但是這些只是我當前的設置,我知道它可以工作!
還有一個重要的注意事項。 在嘗試為這些模塊找到正確的JAR時,我遇到了一些例外情況……因此,如果您忘記了任何JAR,則可能會看到以下任何例外情況:
Caused by: java.lang.NoClassDefFoundError: sun/misc/Unsafeat org.apache.camel.com.googlecode.concurrentlinkedhashmap.ConcurrentHashMapV8.getUnsafe(ConcurrentHashMapV8.java:4136) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.com.googlecode.concurrentlinkedhashmap.ConcurrentHashMapV8.<clinit>(ConcurrentHashMapV8.java:4101) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.com.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.<init>(ConcurrentLinkedHashMap.java:221) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.com.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.<init>(ConcurrentLinkedHashMap.java:104) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.com.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder.build(ConcurrentLinkedHashMap.java:1634) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.util.LRUCache.<init>(LRUCache.java:83) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.util.LRUSoftCache.<init>(LRUSoftCache.java:68) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.impl.EndpointRegistry.<init>(EndpointRegistry.java:39) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.impl.DefaultCamelContext.<init>(DefaultCamelContext.java:234) [camel-core-2.12.1.jar:2.12.1]at org.apache.camel.spring.SpringCamelContext.<init>(SpringCamelContext.java:67) [camel-spring-2.12.1.jar:2.12.1]at org.apache.camel.spring.CamelContextFactoryBean.newCamelContext(CamelContextFactoryBean.java:356) [camel-spring-2.12.1.jar:2.12.1]at org.apache.camel.spring.CamelContextFactoryBean.createContext(CamelContextFactoryBean.java:350) [camel-spring-2.12.1.jar:2.12.1]at org.apache.camel.spring.CamelContextFactoryBean.getContext(CamelContextFactoryBean.java:361) [camel-spring-2.12.1.jar:2.12.1]at org.apache.camel.spring.CamelContextFactoryBean.getContext(CamelContextFactoryBean.java:80) [camel-spring-2.12.1.jar:2.12.1]at org.apache.camel.core.xml.AbstractCamelContextFactoryBean.getContext(AbstractCamelContextFactoryBean.java:518) [camel-spring-2.12.1.jar:2.12.1]at org.apache.camel.core.xml.AbstractCamelContextFactoryBean.afterPropertiesSet(AbstractCamelContextFactoryBean.java:160) [camel-spring-2.12.1.jar:2.12.1]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1571) [spring-beans-3.2.5.RELEASE.jar:3.2.5.RELEASE]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1509) [spring-beans-3.2.5.RELEASE.jar:3.2.5.RELEASE]... 23 more Caused by: java.lang.ClassNotFoundException: sun.misc.Unsafe from [Module "org.apache.camel:2.12.1" from local module loader @1a6e5d5 (finder: local module finder @3b3402 (roots: /home/torun/jboss/wildfly/wildfly-8.0.0.Beta1/modules,/home/torun/jboss/wildfly/wildfly-8.0.0.Beta1/modules/system/layers/base))]at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:197) [jboss-modules.jar:1.3.0.Final]...要么
Caused by: java.lang.NoClassDefFoundError: org/w3c/dom/Nodeat java.lang.Class.getDeclaredConstructors0(Native Method) [rt.jar:1.7.0_40]at java.lang.Class.privateGetDeclaredConstructors(Class.java:2483) [rt.jar:1.7.0_40]at java.lang.Class.getConstructor0(Class.java:2793) [rt.jar:1.7.0_40]at java.lang.Class.getDeclaredConstructor(Class.java:2043) [rt.jar:1.7.0_40]at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:105)at org.springframework.beans.factory.xml.DefaultNamespaceHandlerResolver.resolve(DefaultNamespaceHandlerResolver.java:129)... 29 more Caused by: java.lang.ClassNotFoundException: org.w3c.dom.Node from [Module "org.apache.camel:2.12.1" from local module loader @1a6e5d5 (finder: local module finder @3b3402 (roots: /home/torun/jboss/wildfly/wildfly-8.0.0.Beta1/modules,/home/torun/jboss/wildfly/wildfly-8.0.0.Beta1/modules/system/layers/base))]at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:197) [jboss-modules.jar:1.3.0.Final]...要么
Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBExceptionat java.lang.Class.getDeclaredConstructors0(Native Method) [rt.jar:1.7.0_40]at java.lang.Class.privateGetDeclaredConstructors(Class.java:2483) [rt.jar:1.7.0_40]at java.lang.Class.getConstructor0(Class.java:2793) [rt.jar:1.7.0_40]at java.lang.Class.getDeclaredConstructor(Class.java:2043) [rt.jar:1.7.0_40]at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:105)at org.springframework.beans.factory.xml.DefaultNamespaceHandlerResolver.resolve(DefaultNamespaceHandlerResolver.java:129)... 29 more Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException from [Module "org.apache.camel:2.12.1" from local module loader @1a6e5d5 (finder: local module finder @3b3402 (roots: /home/torun/jboss/wildfly/wildfly-8.0.0.Beta1/modules,/home/torun/jboss/wildfly/wildfly-8.0.0.Beta1/modules/system/layers/base))]at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:197) [jboss-modules.jar:1.3.0.Final]... 希望能幫助到你!
翻譯自: https://www.javacodegeeks.com/2013/11/add-apache-camel-and-spring-as-jboss-modules-in-wildfly.html
apache camel
總結(jié)
以上是生活随笔為你收集整理的apache camel_在WildFly中将Apache Camel和Spring添加为jboss模块的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 模拟用户输入并检查输出的简单方法
- 下一篇: 你要的极简桌面极简 桌面