0

试图在 jetty 8 中托管 solr 5.0。由于我使用的是 servlet API 3.0 ,所以solr 代码库isFinished()方法)中的这一行抛出了 a 。NoSuchMethodException

AbstractMethodException当我升级到 javax-servlet-api 3.1 时,该错误已被替换。问题似乎isFinished()是确实是一个抽象方法,如此处所示

javax ServletRequest 类确实返回(抽象)ServletInputStream 的实例,如此处所示- 至少在我的情况下,码头中的 InputStreamServletRequest.getInputStream()似乎返回未实现ServletInputStreamisFinished(),因此错误。

有什么解决办法吗?我必须在这里遗漏一些东西,因为如果solr 代码库HttpServletRequest.getInputStream().isFinished()没有预期到正确实例化的 ServletInputStream,我认为它不会调用。

4

1 回答 1

3

注意:Jetty 8 是 EOL(生命终结)

无法在 Jetty 8 中托管 Solr 5(或任何需要 Servlet 3.1 的东西)。

第一个支持 Servlet 3.1 的 Jetty 版本是 Jetty 9.1。

于 2016-11-09T13:20:27.373 回答