gpt4 book ai didi

java - 在哪里可以找到有关 Jetty API 的优质文档?

转载 作者:行者123 更新时间:2023-12-01 13:09:12 24 4
gpt4 key购买 nike

我正在研究 Jetty 的一个示例。界面中有一些方法没有很好的记录,所以我不知道如何根据我的现实场景调整示例。 Jetty 文档的某些部分似乎不完整。

对于我浏览过的许多示例,没有任何解释说明为什么它们将某些值传递给某些方法。他们如何知道要传递哪些参数?

是否有一些记录良好的示例或文档可以帮助我理解以下代码:

import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;

import org.glassfish.jersey.servlet.ServletContainer;
public class MinimalServerRest {

public static void main(String[] args) throws Exception {
ServletHolder sh = new ServletHolder(ServletContainer.class);

// Cannot find documentation on setInitParamter
sh.setInitParameter("com.sun.jersey.config.property.resourceConfigClass", "com.sun.jersey.api.core.PackagesResourceConfig");

}

最佳答案

这应该是一个很好的起点: Embedding Jetty

由于您正在尝试将 Jersey 应用程序添加到 Jetty,因此您可能会对 this 感兴趣。 .

如果您有多个servlet等,您可以执行以下操作:

Server server = new Server(8080);
ServletContextHandler contextHandler = new ServletContextHandler(
ServletContextHandler.SESSIONS);
contextHandler.addEventListener(new SomeListener());
contextHandler.addFilter(SomeFilter.class, "/*", EnumSet.of(
DispatcherType.REQUEST, DispatcherType.FORWARD,
DispatcherType.INCLUDE, DispatcherType.ERROR));
contextHandler.addServlet(new ServletHolder(DefaultServlet.class), "/");
contextHandler.addServlet(new ServletHolder(new ServletContainer(
new SomeJerseyApplication())), "/basepath/*");
server.setHandler(contextHandler);

server.start();
server.join();

这是一些入门示例代码。除此之外,如果您需要 initParameters,您可以随时使用

contextHandler.setInitParameter("key","value")

其中键或值字符串非常适合您的要求。就个人而言,在使用嵌入式 jetty 时,我更喜欢使用类和对象而不是基于字符串的配置。

SomeJerseyApplication 可能如下所示:

public class SomeJerseyApplication extends ResourceConfig {

public SomeJerseyApplication() {
packages("you.packages.that.need.to.be.scanned.for.resources");
register(SomeProvider.class);
register(SomeJerseyFeature.class);
}
}

关于java - 在哪里可以找到有关 Jetty API 的优质文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23027432/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com