更换为Undertow后,项目启动不起来

之前使用Jetty启动可以,现在项目调整为Undertow启动不起来了。

UndertowServer.start(HtDataServiceConfig.class, 9090, true);


Exception in thread "main" java.lang.ExceptionInInitializerError
    at io.undertow.servlet.spec.ServletContextImpl.ensureNotProgramaticListener(ServletContextImpl.java:960)
    at io.undertow.servlet.spec.ServletContextImpl.getSessionCookieConfig(ServletContextImpl.java:676)
    at io.undertow.servlet.core.DeploymentManagerImpl.handleDeploymentSessionConfig(DeploymentManagerImpl.java:640)
    at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:178)
    at com.jfinal.server.undertow.UndertowServer.doStart(UndertowServer.java:252)
    at com.jfinal.server.undertow.UndertowServer.start(UndertowServer.java:151)
    at com.ht.data.common.HtDataServiceConfig.main(HtDataServiceConfig.java:56)
Caused by: java.lang.SecurityException: class "javax.servlet.http.HttpSessionIdListener"'s signer information does not match signer information of other classes in the same package
    at java.lang.ClassLoader.checkCerts(ClassLoader.java:898)
    at java.lang.ClassLoader.preDefineClass(ClassLoader.java:668)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:761)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at io.undertow.servlet.core.ApplicationListeners.<clinit>(ApplicationListeners.java:62)
    ... 7 more

评论区

JFinal

2018-12-26 10:23

应该是 jar 包冲突,例如多个 servlet 的 jar 包有影响,检查一下

mekain

2018-12-26 11:02

@JFinal 可以了,我把jeety的相关在pom中删掉,正常了,估计两个冲突了

JFinal

2018-12-26 11:07

@mekain 解决就好,删掉 Jetty 的依赖在《极速上手》 中有过说明:
https://gitee.com/jfinal/jfinal-undertow