我正在尝试将 Jetty 版本从 7.4 升级到符合 servlet 3.0 规范(如 8.1.4)的版本,以及将 GWT 从 2.3 升级到 2.5。
这样做的时候,我发现jetty的Response.addCookie(Cookie)方法调用了Cookie类中没有声明或实现的方法,导致如下错误:
javax.servlet.http.Cookie.isHttpOnly()Z
at org.eclipse.jetty.server.Response.addCookie(Response.java:161)
我已经检查过了,servlet-3.0 的 Cookie 类有 isHttp() 方法,但是 gwt-user.jar 有另一个不符合 servlet 3.0 的实现(意味着它没有定义那个方法,以及其他一些方法)。
此时,我不确定它绑定了哪些代码,也无法调试代码(它在我只能访问日志文件和 jar 的服务器中执行)
改变 pom 文件中的依赖顺序被证明是不成功的,所以我已经没有想法了。
PD:还有一个 j2ee-1.4 jar 的依赖项,它有一个不符合 Servlet 3.0 的 Cookie 类