Apache camel hawt.io仍然可以使用camel http吗?

Apache camel hawt.io仍然可以使用camel http吗?,apache-camel,hawtio,Apache Camel,Hawtio,我们正在使用ApacheCamel运行独立的java应用程序。我们在应用程序中嵌入了haw.io,一切似乎都正常 当我们在camel-http上添加依赖项时,hawtio将不再启动。这些不兼容吗 这是我们得到的例外: 2013-07-01 13:55:10002警告[Thread-5]-HawtioLoader.run(HawtioLoader.java:35)-hawt.io无法运行 java.lang.SecurityException:类“javax.servlet.FilterRegi

我们正在使用ApacheCamel运行独立的java应用程序。我们在应用程序中嵌入了haw.io,一切似乎都正常

当我们在camel-http上添加依赖项时,hawtio将不再启动。这些不兼容吗

这是我们得到的例外:


2013-07-01 13:55:10002警告[Thread-5]-HawtioLoader.run(HawtioLoader.java:35)-hawt.io无法运行
java.lang.SecurityException:类“javax.servlet.FilterRegistration”的签名者信息与同一包中其他类的签名者信息不匹配
在java.lang.ClassLoader.checkCerts(ClassLoader.java:806)~[?:1.6.051]
在java.lang.ClassLoader.preDefineClass(ClassLoader.java:487)~[?:1.6.051]
在java.lang.ClassLoader.defineclassecond(ClassLoader.java:625)~[?:1.6.051]
在java.lang.ClassLoader.defineClass(ClassLoader.java:615)~[?:1.6.051]
在java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)~[?:1.6.051]
在java.net.URLClassLoader.defineClass(URLClassLoader.java:283)~[?:1.6.051]
在java.net.URLClassLoader.access$000(URLClassLoader.java:58)~[?:1.6.0_51]
在java.net.URLClassLoader$1.run(URLClassLoader.java:197)~[?:1.6.0_51]
在java.security.AccessController.doPrivileged(本机方法)~[?:1.6.0_51]
在java.net.URLClassLoader.findClass(URLClassLoader.java:190)~[?:1.6.051]
在java.lang.ClassLoader.loadClass(ClassLoader.java:306)~[?:1.6.051]
在sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)~[?:1.6.051]
在java.lang.ClassLoader.loadClass(ClassLoader.java:247)~[?:1.6.0_51]
在org.eclipse.jetty.servlet.ServletContextHandler.(ServletContextHandler.java:129)~[jetty-webapp-8.1.3.v2020416.jar:8.1.3.v2020416]
在org.eclipse.jetty.servlet.ServletContextHandler.(ServletContextHandler.java:109)~[jetty-webapp-8.1.3.v2020416.jar:8.1.3.v2020416]
在org.eclipse.jetty.servlet.ServletContextHandler.(ServletContextHandler.java:97)~[jetty-webapp-8.1.3.v2020416.jar:8.1.3.v2020416]
在org.eclipse.jetty.webapp.WebAppContext.(WebAppContext.java:171)~[jetty-webapp-8.1.3.v2020416.jar:8.1.3.v2020416]
在io.hawt.embedded.Main.run(Main.java:56)~[hawtio-embedded-1.1.jar:?]
在HawtioLoader.run(HawtioLoader.java:33)[classes/:?]

我认为问题在于hawt.io和camel-http都将包含一些javax包。根据我记忆中遇到这个问题时的情况,解决方案是查看链接的依赖项(例如Eclipse),并找到从这两个依赖项链接的包。当您找到它们时(可能是javax.servlet之类的),将它们从camel http依赖项定义中排除,您的项目很可能会工作

/紫菜

是的。这是有效的:org.apache.camel camel http${camel.version}geronimo-servlet_2.5_spec org.apache.geronimo.specs
2013-07-01 13:55:10,002 WARN  [Thread-5] - HawtioLoader.run (HawtioLoader.java:35) - hawt.io failed to run
java.lang.SecurityException: class "javax.servlet.FilterRegistration"'s signer information does not match signer information of other classes in the same package
at java.lang.ClassLoader.checkCerts(ClassLoader.java:806) ~[?:1.6.0_51]
at java.lang.ClassLoader.preDefineClass(ClassLoader.java:487) ~[?:1.6.0_51]
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:625) ~[?:1.6.0_51]
at java.lang.ClassLoader.defineClass(ClassLoader.java:615) ~[?:1.6.0_51]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) ~[?:1.6.0_51]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) ~[?:1.6.0_51]
at java.net.URLClassLoader.access$000(URLClassLoader.java:58) ~[?:1.6.0_51]
at java.net.URLClassLoader$1.run(URLClassLoader.java:197) ~[?:1.6.0_51]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.6.0_51]
at java.net.URLClassLoader.findClass(URLClassLoader.java:190) ~[?:1.6.0_51]
at java.lang.ClassLoader.loadClass(ClassLoader.java:306) ~[?:1.6.0_51]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) ~[?:1.6.0_51]
at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ~[?:1.6.0_51]
at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:129) ~[jetty-webapp-8.1.3.v20120416.jar:8.1.3.v20120416]
at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:109) ~[jetty-webapp-8.1.3.v20120416.jar:8.1.3.v20120416]
at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:97) ~[jetty-webapp-8.1.3.v20120416.jar:8.1.3.v20120416]
at org.eclipse.jetty.webapp.WebAppContext.<init>(WebAppContext.java:171) ~[jetty-webapp-8.1.3.v20120416.jar:8.1.3.v20120416]
at io.hawt.embedded.Main.run(Main.java:56) ~[hawtio-embedded-1.1.jar:?]
at HawtioLoader.run(HawtioLoader.java:33) [classes/:?]