【发布时间】:2018-03-14 13:57:21
【问题描述】:
我之前曾问过这个问题 -> Upgrading Jetty 8 to Jetty 9 这有助于对一些缺少的包/类进行特定升级。
我现在正在升级一个稍旧的版本,它的包和类不再在 Jetty 中,我找不到任何文档来查看它们被替换的内容或位置/是否被替换。
以下不再存在:
import org.eclipse.jetty.io.Buffer;
import org.eclipse.jetty.util.thread.Timeout;
import org.eclipse.jetty.server.AbstractHttpConnection;
HttpURI.getCompletePath 不再存在,我可以使用 getPath() 或 getDecodedPath() HttpClient 不再有:
setThreadPool
setMaxConnectionsPerAddress
setTimeout
setRequestHeaderSize
setResponseHeaderSize
我可以在HttpConfiguration上使用QueuedThreadPool,上面的大部分方法也在HTTPConfiguration上,不过是setTimeout(httpClient),现在是setIdleTimeout(HttpConfiguration)?
HttpExchange() 不再具有公共默认构造函数,因此我无法使用默认构造函数覆盖它。 在新的 HttpExchange(9.4) 中,它在构造函数中需要以下三个参数:
HttpDestination destination, HttpRequest request, List<Response.ResponseListener> listeners
他们现在上什么课?我只有 访问 HttpClient _client、ServletConfig 和 ServletContext
以下方法也不再存在:
onResponseContent
onResponseHeaderComplete
onResponseStatus
onResponseHeader
onConnectionFailed
setRequestHeader
exchange.setScheme(HttpScheme.HTTPS.equals(request.getScheme())?HttpScheme.HTTPS_BUFFER:HttpScheme.HTTP_BUFFER);
exchange.setMethod(request.getMethod());
exchange.setURL(url.toString());
exchange.setVersion(request.getProtocol());
addRequestHeader
这些方法是否可以替代 HttpExchange 或其他类?
IO.copyThread(InputStream, OutputStream) 不再存在
org.eclipse.jetty.server.RequestRequest 不再有 getConnection();
【问题讨论】:
标签: java eclipse webserver jetty httpclient