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

时间:2013-07-01 18:56:52

标签: apache-camel hawtio

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

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

这是我们得到的例外:


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/:?]

1 个答案:

答案 0 :(得分:2)

我认为问题是hawt.io和camel-http都会包含一些javax-packages。从我记得当我遇到这个问题时,解决方案是查看链式依赖项(例如Eclipse)并查找从两者链接的包。当你找到它们(可能是javax.servlet-something)时,将它们从camel-http依赖项定义中排除,你的项目很可能会有效。

/ S Laven